[INFO] fetching crate skiplist 0.3.0... [INFO] checking skiplist-0.3.0 against master#a5f164faad4a2fed606b8160fd7ecd2d5cbba381 for pr-84920 [INFO] extracting crate skiplist 0.3.0 into /workspace/builds/worker-13/source [INFO] validating manifest of crates.io crate skiplist 0.3.0 on toolchain a5f164faad4a2fed606b8160fd7ecd2d5cbba381 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate skiplist 0.3.0 [INFO] finished tweaking crates.io crate skiplist 0.3.0 [INFO] tweaked toml for crates.io crate skiplist 0.3.0 written to /workspace/builds/worker-13/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 767c9f0f2b469984686568a75053545a387e1283bfbfa4d5d1bf42c80e4fd610 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "767c9f0f2b469984686568a75053545a387e1283bfbfa4d5d1bf42c80e4fd610", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "767c9f0f2b469984686568a75053545a387e1283bfbfa4d5d1bf42c80e4fd610", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "767c9f0f2b469984686568a75053545a387e1283bfbfa4d5d1bf42c80e4fd610", kill_on_drop: false }` [INFO] [stdout] 767c9f0f2b469984686568a75053545a387e1283bfbfa4d5d1bf42c80e4fd610 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 9fd94dd0d62f2134ff785d2f619d1151e3fe1c714cd4c68f64d1b149b350458c [INFO] running `Command { std: "docker" "start" "-a" "9fd94dd0d62f2134ff785d2f619d1151e3fe1c714cd4c68f64d1b149b350458c", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling memchr v2.4.0 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Checking ppv-lite86 v0.2.10 [INFO] [stderr] Checking plotters-backend v0.3.0 [INFO] [stderr] Checking half v1.7.1 [INFO] [stderr] Checking regex-syntax v0.6.25 [INFO] [stderr] Checking oorandom v11.1.3 [INFO] [stderr] Compiling crossbeam-utils v0.8.4 [INFO] [stderr] Compiling memoffset v0.6.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling rayon v1.5.0 [INFO] [stderr] Checking itertools v0.9.0 [INFO] [stderr] Checking itertools v0.10.0 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling cast v0.2.5 [INFO] [stderr] Checking serde_json v1.0.64 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking regex-automata v0.1.9 [INFO] [stderr] Checking serde_cbor v0.11.1 [INFO] [stderr] Checking plotters-svg v0.3.0 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking crossbeam-epoch v0.9.4 [INFO] [stderr] Checking crossbeam-channel v0.5.1 [INFO] [stderr] Checking criterion-plot v0.4.3 [INFO] [stderr] Checking bstr v0.2.16 [INFO] [stderr] Checking csv-core v0.1.10 [INFO] [stderr] Checking rand_pcg v0.2.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking crossbeam-deque v0.8.0 [INFO] [stderr] Checking plotters v0.3.0 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking rayon-core v1.9.0 [INFO] [stderr] Checking regex v1.5.4 [INFO] [stderr] Checking csv v1.1.6 [INFO] [stderr] Checking skiplist v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:249:17 [INFO] [stdout] | [INFO] [stdout] 249 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | mem::replace(&mut self.head, new_head); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:882:21 [INFO] [stdout] | [INFO] [stdout] 882 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:961:21 [INFO] [stdout] | [INFO] [stdout] 961 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:1397:17 [INFO] [stdout] | [INFO] [stdout] 1397 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:95:17 [INFO] [stdout] | [INFO] [stdout] 95 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | mem::replace(&mut self.head, new_head); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:583:21 [INFO] [stdout] | [INFO] [stdout] 583 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:886:21 [INFO] [stdout] | [INFO] [stdout] 886 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:1120:17 [INFO] [stdout] | [INFO] [stdout] 1120 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skipmap.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skipmap.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | mem::replace(&mut self.head, new_head); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skipmap.rs:1293:17 [INFO] [stdout] | [INFO] [stdout] 1293 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking criterion v0.3.4 [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:249:17 [INFO] [stdout] | [INFO] [stdout] 249 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | mem::replace(&mut self.head, new_head); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:882:21 [INFO] [stdout] | [INFO] [stdout] 882 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:961:21 [INFO] [stdout] | [INFO] [stdout] 961 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/ordered_skiplist.rs:1397:17 [INFO] [stdout] | [INFO] [stdout] 1397 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:95:17 [INFO] [stdout] | [INFO] [stdout] 95 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | mem::replace(&mut self.head, new_head); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:583:21 [INFO] [stdout] | [INFO] [stdout] 583 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:886:21 [INFO] [stdout] | [INFO] [stdout] 886 | mem::replace(&mut (*prev).next, mem::replace(&mut (*node).next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skiplist.rs:1120:17 [INFO] [stdout] | [INFO] [stdout] 1120 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skipmap.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skipmap.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | mem::replace(&mut self.head, new_head); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/skipmap.rs:1293:17 [INFO] [stdout] | [INFO] [stdout] 1293 | mem::replace(&mut (*node).next, mem::replace(&mut next.next, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 26.17s [INFO] running `Command { std: "docker" "inspect" "9fd94dd0d62f2134ff785d2f619d1151e3fe1c714cd4c68f64d1b149b350458c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9fd94dd0d62f2134ff785d2f619d1151e3fe1c714cd4c68f64d1b149b350458c", kill_on_drop: false }` [INFO] [stdout] 9fd94dd0d62f2134ff785d2f619d1151e3fe1c714cd4c68f64d1b149b350458c