[INFO] fetching crate rustpool 0.0.1-beta... [INFO] testing rustpool-0.0.1-beta against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-8 [INFO] extracting crate rustpool 0.0.1-beta into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate rustpool 0.0.1-beta [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate rustpool 0.0.1-beta [INFO] tweaked toml for crates.io crate rustpool 0.0.1-beta written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate rustpool 0.0.1-beta on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate rustpool 0.0.1-beta 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libc v0.2.97 [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5418c4b1cd5d0e78a2373702909a329bb4195e051e4c96e1e6e36c439e2126eb [INFO] running `Command { std: "docker" "start" "-a" "5418c4b1cd5d0e78a2373702909a329bb4195e051e4c96e1e6e36c439e2126eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5418c4b1cd5d0e78a2373702909a329bb4195e051e4c96e1e6e36c439e2126eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5418c4b1cd5d0e78a2373702909a329bb4195e051e4c96e1e6e36c439e2126eb", kill_on_drop: false }` [INFO] [stdout] 5418c4b1cd5d0e78a2373702909a329bb4195e051e4c96e1e6e36c439e2126eb [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] eba64aec12f8c2cac9a9ca8e670fd3e2d3b566a03d8e720e0adaeb1fbd926980 [INFO] running `Command { std: "docker" "start" "-a" "eba64aec12f8c2cac9a9ca8e670fd3e2d3b566a03d8e720e0adaeb1fbd926980", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.97 [INFO] [stderr] Compiling rustpool v0.0.1-beta (/opt/rustwide/workdir) [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/atomic_circular_buffer.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | Box::from_raw(ptr as *mut T); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = Box::from_raw(ptr as *mut T); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/blocking_queue.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | Box::from_raw(self.buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 153 | let _ = Box::from_raw(self.buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/circular_buffer.rs:116:17 [INFO] [stdout] | [INFO] [stdout] 116 | Box::from_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 116 | let _ = Box::from_raw(ptr); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.07s [INFO] running `Command { std: "docker" "inspect" "eba64aec12f8c2cac9a9ca8e670fd3e2d3b566a03d8e720e0adaeb1fbd926980", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eba64aec12f8c2cac9a9ca8e670fd3e2d3b566a03d8e720e0adaeb1fbd926980", kill_on_drop: false }` [INFO] [stdout] eba64aec12f8c2cac9a9ca8e670fd3e2d3b566a03d8e720e0adaeb1fbd926980 [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 001fc28207f98fc2f3d65a12d7a89cca6da646e55a1d3c21ea5eadede85c9e25 [INFO] running `Command { std: "docker" "start" "-a" "001fc28207f98fc2f3d65a12d7a89cca6da646e55a1d3c21ea5eadede85c9e25", kill_on_drop: false }` [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/atomic_circular_buffer.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | Box::from_raw(ptr as *mut T); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = Box::from_raw(ptr as *mut T); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/blocking_queue.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | Box::from_raw(self.buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 153 | let _ = Box::from_raw(self.buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/circular_buffer.rs:116:17 [INFO] [stdout] | [INFO] [stdout] 116 | Box::from_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 116 | let _ = Box::from_raw(ptr); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rustpool v0.0.1-beta (/opt/rustwide/workdir) [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/atomic_circular_buffer.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | Box::from_raw(ptr as *mut T); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = Box::from_raw(ptr as *mut T); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/blocking_queue.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | Box::from_raw(self.buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 153 | let _ = Box::from_raw(self.buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/circular_buffer.rs:116:17 [INFO] [stdout] | [INFO] [stdout] 116 | Box::from_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 116 | let _ = Box::from_raw(ptr); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.19s [INFO] running `Command { std: "docker" "inspect" "001fc28207f98fc2f3d65a12d7a89cca6da646e55a1d3c21ea5eadede85c9e25", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "001fc28207f98fc2f3d65a12d7a89cca6da646e55a1d3c21ea5eadede85c9e25", kill_on_drop: false }` [INFO] [stdout] 001fc28207f98fc2f3d65a12d7a89cca6da646e55a1d3c21ea5eadede85c9e25 [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 85a77ecfdb9a0fcd8d9149e32fd7902e4f54d3486edd0c72a26f4090628761d1 [INFO] running `Command { std: "docker" "start" "-a" "85a77ecfdb9a0fcd8d9149e32fd7902e4f54d3486edd0c72a26f4090628761d1", kill_on_drop: false }` [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/atomic_circular_buffer.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | Box::from_raw(ptr as *mut T); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 45 | let _ = Box::from_raw(ptr as *mut T); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/blocking_queue.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | Box::from_raw(self.buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 153 | let _ = Box::from_raw(self.buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/circular_buffer.rs:116:17 [INFO] [stderr] | [INFO] [stderr] 116 | Box::from_raw(ptr); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] running 35 tests [INFO] [stderr] | [INFO] [stderr] 116 | let _ = Box::from_raw(ptr); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `rustpool` (lib) generated 3 warnings [INFO] [stderr] warning: `rustpool` (lib test) generated 3 warnings (3 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustpool-570b793d43517389) [INFO] [stdout] test atomic_circular_buffer::tests::test_acb_add ... ok [INFO] [stdout] test atomic_circular_buffer::tests::test_acb_offer_overflow ... ok [INFO] [stdout] test atomic_circular_buffer::tests::test_acb_take_all_offer_all ... ok [INFO] [stdout] test atomic_circular_buffer::tests::test_acb_take_offer ... ok [INFO] [stdout] test atomic_circular_buffer::tests::test_acb_take_serial ... ok [INFO] [stdout] test atomic_queue::tests::test_aq_take_offer ... ok [INFO] [stdout] test blocking_queue::tests::test_bq_over_limit ... ok [INFO] [stdout] test blocking_queue::tests::test_bq_take ... ok [INFO] [stdout] test blocking_queue::tests::test_bq_take_and_offer ... ok [INFO] [stdout] test circular_buffer::tests::test_cb_add_full ... ok [INFO] [stdout] test circular_buffer::tests::test_cb_add_take ... ok [INFO] [stdout] test circular_buffer::tests::test_cb_offer_full ... ok [INFO] [stdout] test circular_buffer::tests::test_cb_take_offer ... ok [INFO] [stdout] test atomic_circular_buffer::tests::test_own_test ... ok [INFO] [stdout] test object::tests::obj_builder_create_atomic ... ok [INFO] [stdout] test object::tests::obj_builder_create_blocking ... ok [INFO] [stdout] test blocking_queue::tests::test_bq_take_threads ... ok [INFO] [stdout] test atomic_circular_buffer::tests::test_acb_mt_take_offer ... ok [INFO] [stdout] test blocking_queue::tests::test_bq_mt_take_offer ... ok [INFO] [stdout] test blocking_queue::tests::test_bq_over_limit_block ... ok [INFO] [stdout] test thread::tests::test_create_empty_thread_pool ... ok [INFO] [stdout] test object::tests::obj_builder_create_atomic_arc ... ok [INFO] [stdout] test thread::tests::test_fail_no_cpu ... ok [INFO] [stdout] test thread::tests::test_get_cpu_ids ... ok [INFO] [stdout] test object::tests::obj_builder_create_blocking_arc ... ok [INFO] [stdout] test thread::tests::test_builf_fail_all_and_target_cpus ... ok [INFO] [stdout] test thread::tests::test_get_cpu_numa_node ... ok [INFO] [stdout] test thread::tests::test_get_cpus_with_nodes ... ok [INFO] [stdout] test thread::tests::test_build_thread_pool_target_cpu ... ok [INFO] [stdout] test thread::tests::test_build_with_threads ... ok [INFO] [stdout] test thread::tests::test_schedule_and_run_all_cpus ... ok [INFO] [stdout] test thread::tests::test_schedule_and_run_single_cpu ... ok [INFO] [stdout] test thread::tests::test_add_thread_single_cpu ... ok [INFO] [stdout] test thread::tests::test_fail_add_thread_invalid_cpu - should panic ... ok [INFO] [stdout] test thread::tests::test_add_thread_all_valid_cpu ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.53s [INFO] [stdout] [INFO] [stderr] Doc-tests rustpool [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test src/atomic_queue.rs - atomic_queue::AtomicQueue<'a,T> (line 16) ... ok [INFO] [stdout] test src/blocking_queue.rs - blocking_queue::BlockingQueue<'a,T> (line 16) ... ok [INFO] [stdout] test src/thread.rs - thread::ThreadPoolBuilder (line 49) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.55s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "85a77ecfdb9a0fcd8d9149e32fd7902e4f54d3486edd0c72a26f4090628761d1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "85a77ecfdb9a0fcd8d9149e32fd7902e4f54d3486edd0c72a26f4090628761d1", kill_on_drop: false }` [INFO] [stdout] 85a77ecfdb9a0fcd8d9149e32fd7902e4f54d3486edd0c72a26f4090628761d1