[INFO] fetching crate pyo3-matrix-synapse-module 0.1.2... [INFO] testing pyo3-matrix-synapse-module-0.1.2 against master#caccb4d0368bd918ef6668af8e13834d07040417 for pr-146098-1 [INFO] extracting crate pyo3-matrix-synapse-module 0.1.2 into /workspace/builds/worker-0-tc1/source [INFO] started tweaking crates.io crate pyo3-matrix-synapse-module 0.1.2 [INFO] finished tweaking crates.io crate pyo3-matrix-synapse-module 0.1.2 [INFO] tweaked toml for crates.io crate pyo3-matrix-synapse-module 0.1.2 written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate pyo3-matrix-synapse-module 0.1.2 on toolchain caccb4d0368bd918ef6668af8e13834d07040417 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 82 packages to latest compatible versions [INFO] [stderr] Adding http v0.2.12 (available: v1.3.1) [INFO] [stderr] Adding http-body v0.4.6 (available: v1.0.1) [INFO] [stderr] Adding pyo3 v0.18.3 (available: v0.26.0) [INFO] [stderr] Adding pyo3-asyncio v0.18.0 (available: v0.20.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pyo3-twisted-web v0.1.1 [INFO] [stderr] Downloaded pyo3-asyncio v0.18.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eaa4acd1d07a40121de4dc72dcfc7ac27702ff3126e153543f7e5f41005f3c19 [INFO] running `Command { std: "docker" "start" "-a" "eaa4acd1d07a40121de4dc72dcfc7ac27702ff3126e153543f7e5f41005f3c19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eaa4acd1d07a40121de4dc72dcfc7ac27702ff3126e153543f7e5f41005f3c19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eaa4acd1d07a40121de4dc72dcfc7ac27702ff3126e153543f7e5f41005f3c19", kill_on_drop: false }` [INFO] [stdout] eaa4acd1d07a40121de4dc72dcfc7ac27702ff3126e153543f7e5f41005f3c19 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7d96838ffaa0e425ad9a691f00cb65b47251ec463a57d473df473cf200af43ee [INFO] running `Command { std: "docker" "start" "-a" "7d96838ffaa0e425ad9a691f00cb65b47251ec463a57d473df473cf200af43ee", kill_on_drop: false }` [INFO] [stderr] Compiling target-lexicon v0.12.16 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling unindent v0.1.11 [INFO] [stderr] Compiling indoc v1.0.9 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling pin-project v1.1.10 [INFO] [stderr] Compiling pyo3-build-config v0.18.3 [INFO] [stderr] Compiling pyo3-ffi v0.18.3 [INFO] [stderr] Compiling pyo3 v0.18.3 [INFO] [stderr] Compiling pyo3-macros-backend v0.18.3 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling pyo3-macros v0.18.3 [INFO] [stderr] Compiling pyo3-asyncio v0.18.0 [INFO] [stderr] Compiling pyo3-twisted-web v0.1.1 [INFO] [stderr] Compiling pyo3-matrix-synapse-module v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stdout] --> src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stdout] --> src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.62s [INFO] running `Command { std: "docker" "inspect" "7d96838ffaa0e425ad9a691f00cb65b47251ec463a57d473df473cf200af43ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7d96838ffaa0e425ad9a691f00cb65b47251ec463a57d473df473cf200af43ee", kill_on_drop: false }` [INFO] [stdout] 7d96838ffaa0e425ad9a691f00cb65b47251ec463a57d473df473cf200af43ee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 099224da72f12164cff65f286b0313acfa93665c3764c87c980de939d653ce0f [INFO] running `Command { std: "docker" "start" "-a" "099224da72f12164cff65f286b0313acfa93665c3764c87c980de939d653ce0f", kill_on_drop: false }` [INFO] [stdout] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stdout] --> src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stdout] --> src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling pyo3-matrix-synapse-module v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stdout] --> src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stdout] --> src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.62s [INFO] running `Command { std: "docker" "inspect" "099224da72f12164cff65f286b0313acfa93665c3764c87c980de939d653ce0f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "099224da72f12164cff65f286b0313acfa93665c3764c87c980de939d653ce0f", kill_on_drop: false }` [INFO] [stdout] 099224da72f12164cff65f286b0313acfa93665c3764c87c980de939d653ce0f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 129a337d69cfa381d0ff4371cbbaaaaceb96117b24a20b78bfbfeffd4993d18b [INFO] running `Command { std: "docker" "start" "-a" "129a337d69cfa381d0ff4371cbbaaaaceb96117b24a20b78bfbfeffd4993d18b", kill_on_drop: false }` [INFO] [stderr] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stderr] --> src/lib.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stderr] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `addr_of` [INFO] [stderr] --> src/lib.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | pyo3::import_exception!(synapse.module_api.errors, ConfigError); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `$crate::pyobject_native_type_info` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the macro `$crate::pyobject_native_type_info` may come from an old version of the `pyo3` crate, try updating your dependency with `cargo update -p pyo3` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the macro `$crate::pyobject_native_type_info` which comes from the expansion of the macro `pyo3::import_exception` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `pyo3-matrix-synapse-module` (lib) generated 2 warnings [INFO] [stderr] warning: `pyo3-matrix-synapse-module` (lib test) generated 2 warnings (2 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pyo3_matrix_synapse_module-67dac78e666723dc) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests pyo3_matrix_synapse_module [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "129a337d69cfa381d0ff4371cbbaaaaceb96117b24a20b78bfbfeffd4993d18b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "129a337d69cfa381d0ff4371cbbaaaaceb96117b24a20b78bfbfeffd4993d18b", kill_on_drop: false }` [INFO] [stdout] 129a337d69cfa381d0ff4371cbbaaaaceb96117b24a20b78bfbfeffd4993d18b