[INFO] fetching crate criterion 0.3.5... [INFO] checking criterion-0.3.5 against master#a09c668c965f735f4cd59e7158662b9daa0b71ba for pr-98370 [INFO] extracting crate criterion 0.3.5 into /workspace/builds/worker-5/source [INFO] validating manifest of crates.io crate criterion 0.3.5 on toolchain a09c668c965f735f4cd59e7158662b9daa0b71ba [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a09c668c965f735f4cd59e7158662b9daa0b71ba" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate criterion 0.3.5 [INFO] finished tweaking crates.io crate criterion 0.3.5 [INFO] tweaked toml for crates.io crate criterion 0.3.5 written to /workspace/builds/worker-5/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a09c668c965f735f4cd59e7158662b9daa0b71ba" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a09c668c965f735f4cd59e7158662b9daa0b71ba" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded same-file v1.0.6 [INFO] [stderr] Downloaded memoffset v0.6.5 [INFO] [stderr] Downloaded gloo-timers v0.2.4 [INFO] [stderr] Downloaded itoa v0.4.8 [INFO] [stderr] Downloaded crossbeam-channel v0.5.5 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.81 [INFO] [stderr] Downloaded clap v2.34.0 [INFO] [stderr] Downloaded autocfg v1.1.0 [INFO] [stderr] Downloaded ctor v0.1.22 [INFO] [stderr] Downloaded value-bag v1.0.0-alpha.9 [INFO] [stderr] Downloaded bumpalo v3.10.0 [INFO] [stderr] Downloaded async-global-executor v2.2.0 [INFO] [stderr] Downloaded async-process v1.4.0 [INFO] [stderr] Downloaded kv-log-macro v1.0.7 [INFO] [stderr] Downloaded async-std v1.12.0 [INFO] [stderr] Downloaded polling v2.2.0 [INFO] [stderr] Downloaded wasm-bindgen v0.2.81 [INFO] [stderr] Downloaded scopeguard v1.1.0 [INFO] [stderr] Downloaded async-io v1.7.0 [INFO] [stderr] Downloaded cache-padded v1.2.0 [INFO] [stderr] Downloaded event-listener v2.5.2 [INFO] [stderr] Downloaded async-task v4.2.0 [INFO] [stderr] Downloaded blocking v1.2.0 [INFO] [stderr] Downloaded futures-lite v1.12.0 [INFO] [stderr] Downloaded tempfile v3.3.0 [INFO] [stderr] Downloaded walkdir v2.3.2 [INFO] [stderr] Downloaded unicode-ident v1.0.1 [INFO] [stderr] Downloaded remove_dir_all v0.5.3 [INFO] [stderr] Downloaded futures-io v0.3.21 [INFO] [stderr] Downloaded atomic-waker v1.0.0 [INFO] [stderr] Downloaded waker-fn v1.1.0 [INFO] [stderr] Downloaded async-channel v1.6.1 [INFO] [stderr] Downloaded futures-core v0.3.21 [INFO] [stderr] Downloaded slab v0.4.6 [INFO] [stderr] Downloaded concurrent-queue v1.2.2 [INFO] [stderr] Downloaded version_check v0.9.4 [INFO] [stderr] Downloaded async-lock v2.5.0 [INFO] [stderr] Downloaded lazy_static v1.4.0 [INFO] [stderr] Downloaded plotters-svg v0.3.1 [INFO] [stderr] Downloaded either v1.6.1 [INFO] [stderr] Downloaded quickcheck v1.0.3 [INFO] [stderr] Downloaded oorandom v11.1.3 [INFO] [stderr] Downloaded futures-sink v0.3.21 [INFO] [stderr] Downloaded rustc_version v0.4.0 [INFO] [stderr] Downloaded memchr v2.5.0 [INFO] [stderr] Downloaded futures-channel v0.3.21 [INFO] [stderr] Downloaded cc v1.0.73 [INFO] [stderr] Downloaded futures v0.3.21 [INFO] [stderr] Downloaded num-traits v0.2.15 [INFO] [stderr] Downloaded serde_cbor v0.11.2 [INFO] [stderr] Downloaded unicode-width v0.1.9 [INFO] [stderr] Downloaded criterion-plot v0.4.4 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.31 [INFO] [stderr] Downloaded futures-task v0.3.21 [INFO] [stderr] Downloaded approx v0.5.1 [INFO] [stderr] Downloaded crossbeam-deque v0.8.1 [INFO] [stderr] Downloaded semver v1.0.10 [INFO] [stderr] Downloaded js-sys v0.3.58 [INFO] [stderr] Downloaded csv-core v0.1.10 [INFO] [stderr] Downloaded regex-automata v0.1.10 [INFO] [stderr] Downloaded itertools v0.10.3 [INFO] [stderr] Downloaded serde_json v1.0.81 [INFO] [stderr] Downloaded futures-util v0.3.21 [INFO] [stderr] Downloaded rayon v1.5.3 [INFO] [stderr] Downloaded textwrap v0.11.0 [INFO] [stderr] Downloaded cast v0.2.7 [INFO] [stderr] Downloaded regex-syntax v0.6.26 [INFO] [stderr] Downloaded syn v1.0.98 [INFO] [stderr] Downloaded smol v1.2.5 [INFO] [stderr] Downloaded regex v1.5.6 [INFO] [stderr] Downloaded log v0.4.17 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.81 [INFO] [stderr] Downloaded bstr v0.2.17 [INFO] [stderr] Downloaded atty v0.2.14 [INFO] [stderr] Downloaded web-sys v0.3.58 [INFO] [stderr] Downloaded tokio v1.19.2 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.81 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.81 [INFO] [stderr] Downloaded csv v1.1.6 [INFO] [stderr] Downloaded winapi v0.3.9 [INFO] [stderr] Downloaded async-fs v1.5.0 [INFO] [stderr] Downloaded pin-utils v0.1.0 [INFO] [stderr] Downloaded futures-executor v0.3.21 [INFO] [stderr] Downloaded async-net v1.6.1 [INFO] [stderr] Downloaded instant v0.1.12 [INFO] [stderr] Downloaded itoa v1.0.2 [INFO] [stderr] Downloaded parking v2.0.0 [INFO] [stderr] Downloaded rayon-core v1.9.3 [INFO] [stderr] Downloaded winapi-i686-pc-windows-gnu v0.4.0 [INFO] [stderr] Downloaded winapi-util v0.1.5 [INFO] [stderr] Downloaded serde_derive v1.0.137 [INFO] [stderr] Downloaded plotters-backend v0.3.2 [INFO] [stderr] Downloaded winapi-x86_64-pc-windows-gnu v0.4.0 [INFO] [stderr] Downloaded crossbeam-epoch v0.9.9 [INFO] [stderr] Downloaded plotters v0.3.1 [INFO] [stderr] Downloaded proc-macro2 v1.0.40 [INFO] [stderr] Downloaded serde v1.0.137 [INFO] [stderr] Downloaded async-executor v1.4.1 [INFO] [stderr] Downloaded half v1.8.2 [INFO] [stderr] Downloaded quote v1.0.20 [INFO] [stderr] Downloaded wepoll-ffi v0.1.2 [INFO] [stderr] Downloaded socket2 v0.4.4 [INFO] [stderr] Downloaded bitflags v1.3.2 [INFO] [stderr] Downloaded ryu v1.0.10 [INFO] [stderr] Downloaded pin-project-lite v0.2.9 [INFO] [stderr] Downloaded redox_syscall v0.2.13 [INFO] [stderr] Downloaded fastrand v1.7.0 [INFO] [stderr] Downloaded tinytemplate v1.2.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:ac0d0aa6ec8ed129e241004a6179c99fa0d2616f50ba759c5b60bd26d0fafa02" "/opt/rustwide/cargo-home/bin/cargo" "+a09c668c965f735f4cd59e7158662b9daa0b71ba" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 87eeae761f1877f15e39d6974ab6169442852a81dfa89af041006a09c1ee597b [INFO] running `Command { std: "docker" "start" "-a" "87eeae761f1877f15e39d6974ab6169442852a81dfa89af041006a09c1ee597b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "87eeae761f1877f15e39d6974ab6169442852a81dfa89af041006a09c1ee597b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "87eeae761f1877f15e39d6974ab6169442852a81dfa89af041006a09c1ee597b", kill_on_drop: false }` [INFO] [stdout] 87eeae761f1877f15e39d6974ab6169442852a81dfa89af041006a09c1ee597b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ac0d0aa6ec8ed129e241004a6179c99fa0d2616f50ba759c5b60bd26d0fafa02" "/opt/rustwide/cargo-home/bin/cargo" "+a09c668c965f735f4cd59e7158662b9daa0b71ba" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a2f52b2fe3377fcbe41506f9e1bbf1da550a1f7eb9bbeffd613a72d0d9a6f2d7 [INFO] running `Command { std: "docker" "start" "-a" "a2f52b2fe3377fcbe41506f9e1bbf1da550a1f7eb9bbeffd613a72d0d9a6f2d7", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling libc v0.2.126 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling serde v1.0.137 [INFO] [stderr] Compiling semver v1.0.10 [INFO] [stderr] Compiling crossbeam-utils v0.8.9 [INFO] [stderr] Checking once_cell v1.12.0 [INFO] [stderr] Compiling proc-macro2 v1.0.40 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Compiling futures-channel v0.3.21 [INFO] [stderr] Compiling rayon-core v1.9.3 [INFO] [stderr] Compiling futures-task v0.3.21 [INFO] [stderr] Compiling quote v1.0.20 [INFO] [stderr] Compiling unicode-ident v1.0.1 [INFO] [stderr] Checking either v1.6.1 [INFO] [stderr] Checking futures-sink v0.3.21 [INFO] [stderr] Compiling serde_json v1.0.81 [INFO] [stderr] Checking ryu v1.0.10 [INFO] [stderr] Compiling syn v1.0.98 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling serde_derive v1.0.137 [INFO] [stderr] Checking ppv-lite86 v0.2.16 [INFO] [stderr] Checking itoa v1.0.2 [INFO] [stderr] Checking futures-io v0.3.21 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking plotters-backend v0.3.2 [INFO] [stderr] Checking unicode-width v0.1.9 [INFO] [stderr] Checking slab v0.4.6 [INFO] [stderr] Checking pin-project-lite v0.2.9 [INFO] [stderr] Checking itoa v0.4.8 [INFO] [stderr] Checking half v1.8.2 [INFO] [stderr] Checking regex-syntax v0.6.26 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking remove_dir_all v0.5.3 [INFO] [stderr] Checking oorandom v11.1.3 [INFO] [stderr] Checking fastrand v1.7.0 [INFO] [stderr] Checking itertools v0.10.3 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking walkdir v2.3.2 [INFO] [stderr] Checking plotters-svg v0.3.1 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.9 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling rayon v1.5.3 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Checking crossbeam-channel v0.5.5 [INFO] [stderr] Checking csv-core v0.1.10 [INFO] [stderr] Compiling cast v0.2.7 [INFO] [stderr] Checking crossbeam-deque v0.8.1 [INFO] [stderr] Checking regex v1.5.6 [INFO] [stderr] Checking getrandom v0.2.7 [INFO] [stderr] Checking num_cpus v1.13.1 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking tempfile v3.3.0 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking criterion-plot v0.4.4 [INFO] [stderr] Checking plotters v0.3.1 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking quickcheck v1.0.3 [INFO] [stderr] Checking bstr v0.2.17 [INFO] [stderr] Checking serde_cbor v0.11.2 [INFO] [stderr] Checking csv v1.1.6 [INFO] [stderr] Checking futures-executor v0.3.21 [INFO] [stderr] Checking futures v0.3.21 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking criterion v0.3.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/macros_private.rs:19:36 [INFO] [stdout] | [INFO] [stdout] 19 | try_else_return!($x, || {}); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/html/mod.rs:533:29 [INFO] [stdout] | [INFO] [stdout] 533 | let mut found_ids = try_else_return!(fs::list_existing_benchmarks(&output_directory)); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `try_else_return` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/macros_private.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | println!("Criterion.rs ERROR: {}", &format!($($arg)*)); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/plot/gnuplot_backend/mod.rs:243:28 [INFO] [stdout] | [INFO] [stdout] 243 | Ok(out) => error!("Error in Gnuplot: {}", String::from_utf8_lossy(&out.stderr)), [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `error` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/macros_private.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | println!("Criterion.rs ERROR: {}", &format!($($arg)*)); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/plot/gnuplot_backend/mod.rs:244:27 [INFO] [stdout] | [INFO] [stdout] 244 | Err(e) => error!("Got IO error while waiting for Gnuplot to complete: {}", e), [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `error` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/macros_private.rs:19:36 [INFO] [stdout] | [INFO] [stdout] 19 | try_else_return!($x, || {}); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/html/mod.rs:533:29 [INFO] [stdout] | [INFO] [stdout] 533 | let mut found_ids = try_else_return!(fs::list_existing_benchmarks(&output_directory)); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `try_else_return` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/macros_private.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | println!("Criterion.rs ERROR: {}", &format!($($arg)*)); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/plot/gnuplot_backend/mod.rs:243:28 [INFO] [stdout] | [INFO] [stdout] 243 | Ok(out) => error!("Error in Gnuplot: {}", String::from_utf8_lossy(&out.stderr)), [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `error` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/macros_private.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | println!("Criterion.rs ERROR: {}", &format!($($arg)*)); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/plot/gnuplot_backend/mod.rs:244:27 [INFO] [stdout] | [INFO] [stdout] 244 | Err(e) => error!("Got IO error while waiting for Gnuplot to complete: {}", e), [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `error` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `runner_version` [INFO] [stdout] --> src/connection.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | runner_version: [u8; 3], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: `InnerConnection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `runner_version` [INFO] [stdout] --> src/connection.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | runner_version: [u8; 3], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: `InnerConnection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 16.14s [INFO] running `Command { std: "docker" "inspect" "a2f52b2fe3377fcbe41506f9e1bbf1da550a1f7eb9bbeffd613a72d0d9a6f2d7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a2f52b2fe3377fcbe41506f9e1bbf1da550a1f7eb9bbeffd613a72d0d9a6f2d7", kill_on_drop: false }` [INFO] [stdout] a2f52b2fe3377fcbe41506f9e1bbf1da550a1f7eb9bbeffd613a72d0d9a6f2d7