[INFO] fetching crate kameo_actors 0.2.0... [INFO] testing kameo_actors-0.2.0 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate kameo_actors 0.2.0 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate kameo_actors 0.2.0 [INFO] finished tweaking crates.io crate kameo_actors 0.2.0 [INFO] tweaked toml for crates.io crate kameo_actors 0.2.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate kameo_actors 0.2.0 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate kameo_actors 0.2.0 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded kameo_macros v0.17.0 [INFO] [stderr] Downloaded kameo v0.17.0 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ae0203af7e1afcb442a4da86ccc1b249f00cecf26c65c6919d6e784ee2014915 [INFO] running `Command { std: "docker" "start" "-a" "ae0203af7e1afcb442a4da86ccc1b249f00cecf26c65c6919d6e784ee2014915", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ae0203af7e1afcb442a4da86ccc1b249f00cecf26c65c6919d6e784ee2014915", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae0203af7e1afcb442a4da86ccc1b249f00cecf26c65c6919d6e784ee2014915", kill_on_drop: false }` [INFO] [stdout] ae0203af7e1afcb442a4da86ccc1b249f00cecf26c65c6919d6e784ee2014915 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e055a7c8d98dc68922e76b1830b7c3e2e563c0b785cf219814744697539698d2 [INFO] running `Command { std: "docker" "start" "-a" "e055a7c8d98dc68922e76b1830b7c3e2e563c0b785cf219814744697539698d2", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.102 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling tracing-core v0.1.34 [INFO] [stderr] Compiling dyn-clone v1.0.19 [INFO] [stderr] Compiling downcast-rs v2.0.1 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling uuid v1.17.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.29 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling kameo_macros v0.17.0 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling tokio v1.45.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling kameo v0.17.0 [INFO] [stderr] Compiling kameo_actors v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.54s [INFO] running `Command { std: "docker" "inspect" "e055a7c8d98dc68922e76b1830b7c3e2e563c0b785cf219814744697539698d2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e055a7c8d98dc68922e76b1830b7c3e2e563c0b785cf219814744697539698d2", kill_on_drop: false }` [INFO] [stdout] e055a7c8d98dc68922e76b1830b7c3e2e563c0b785cf219814744697539698d2 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] aa37386b4310b1f363c915ae78c6cc75d52dc9e3efd274ca706c6b528ad56cf7 [INFO] running `Command { std: "docker" "start" "-a" "aa37386b4310b1f363c915ae78c6cc75d52dc9e3efd274ca706c6b528ad56cf7", kill_on_drop: false }` [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling tokio v1.45.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling async-stream v0.3.6 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling tokio-test v0.4.4 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling kameo v0.17.0 [INFO] [stderr] Compiling kameo_actors v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.03s [INFO] running `Command { std: "docker" "inspect" "aa37386b4310b1f363c915ae78c6cc75d52dc9e3efd274ca706c6b528ad56cf7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aa37386b4310b1f363c915ae78c6cc75d52dc9e3efd274ca706c6b528ad56cf7", kill_on_drop: false }` [INFO] [stdout] aa37386b4310b1f363c915ae78c6cc75d52dc9e3efd274ca706c6b528ad56cf7 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 590d92ca96e4816b822743e46b63d15e61766282ef8be53384ef0e959d033f67 [INFO] running `Command { std: "docker" "start" "-a" "590d92ca96e4816b822743e46b63d15e61766282ef8be53384ef0e959d033f67", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kameo_actors-2f0b78372c031e76) [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 kameo_actors [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test src/broker.rs - broker (line 16) ... FAILED [INFO] [stdout] test src/message_queue.rs - message_queue (line 17) ... FAILED [INFO] [stdout] test src/message_bus.rs - message_bus (line 16) ... FAILED [INFO] [stdout] test src/pubsub.rs - pubsub (line 19) ... FAILED [INFO] [stdout] test src/pubsub.rs - pubsub::PubSub::publish (line 84) ... ok [INFO] [stdout] test src/pubsub.rs - pubsub::PubSub::subscribe (line 131) ... ok [INFO] [stdout] test src/pubsub.rs - pubsub::PubSub::subscribe_filter (line 173) ... ok [INFO] [stdout] test src/pool.rs - pool (line 19) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/broker.rs - broker (line 16) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `MyActor` [INFO] [stdout] --> src/broker.rs:42:18 [INFO] [stdout] | [INFO] [stdout] 29 | let broker_ref = MyActor::spawn(broker); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | use of undeclared type `MyActor` [INFO] [stdout] | help: a trait with a similar name exists: `Actor` [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `MyActor` [INFO] [stdout] --> src/broker.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 32 | let display = MyActor::spawn(DisplayActor); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | use of undeclared type `MyActor` [INFO] [stdout] | help: a trait with a similar name exists: `Actor` [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/message_queue.rs - message_queue (line 17) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `spawn` in crate `kameo` [INFO] [stdout] --> src/message_queue.rs:42:21 [INFO] [stdout] | [INFO] [stdout] 28 | let mq_ref = kameo::spawn(mq); [INFO] [stdout] | ^^^^^ not found in `kameo` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these functions [INFO] [stdout] | [INFO] [stdout] 2 + use std::thread::spawn; [INFO] [stdout] | [INFO] [stdout] 2 + use tokio::spawn; [INFO] [stdout] | [INFO] [stdout] 2 + use tokio_test::task::spawn; [INFO] [stdout] | [INFO] [stdout] help: if you import `spawn`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 28 - let mq_ref = kameo::spawn(mq); [INFO] [stdout] 28 + let mq_ref = spawn(mq); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `spawn` in crate `kameo` [INFO] [stdout] --> src/message_queue.rs:62:24 [INFO] [stdout] | [INFO] [stdout] 48 | let processor = kameo::spawn(OrderProcessor); [INFO] [stdout] | ^^^^^ not found in `kameo` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these functions [INFO] [stdout] | [INFO] [stdout] 2 + use std::thread::spawn; [INFO] [stdout] | [INFO] [stdout] 2 + use tokio::spawn; [INFO] [stdout] | [INFO] [stdout] 2 + use tokio_test::task::spawn; [INFO] [stdout] | [INFO] [stdout] help: if you import `spawn`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 48 - let processor = kameo::spawn(OrderProcessor); [INFO] [stdout] 48 + let processor = spawn(OrderProcessor); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/message_bus.rs - message_bus (line 16) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `MessageBuf` [INFO] [stdout] --> src/message_bus.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 27 | let message_bus_ref = MessageBuf::spawn(message_bus); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | use of undeclared type `MessageBuf` [INFO] [stdout] | help: a struct with a similar name exists: `MessageBus` [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `MessageBuf` [INFO] [stdout] --> src/message_bus.rs:43:15 [INFO] [stdout] | [INFO] [stdout] 30 | let display = MessageBuf::spawn(DisplayActor); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | use of undeclared type `MessageBuf` [INFO] [stdout] | help: a struct with a similar name exists: `MessageBus` [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/pubsub.rs - pubsub (line 19) stdout ---- [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/pubsub.rs:42:39 [INFO] [stdout] | [INFO] [stdout] 26 | let pubsub_actor_ref = MyActor::spawn(PubSub::new()); [INFO] [stdout] | -------------- ^^^^^^^^^^^^^ expected `MyActor`, found `PubSub<_>` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected struct `MyActor` [INFO] [stdout] found struct `PubSub<_>` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kameo-0.17.0/src/actor.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 321 | fn spawn(args: Self::Args) -> ActorRef { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/pubsub.rs:43:23 [INFO] [stdout] | [INFO] [stdout] 27 | pubsub_actor_ref.tell(Subscribe(actor_ref)).await?; [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^ expected `&str`, found `Subscribe` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&'static str` [INFO] [stdout] found struct `kameo_actors::pubsub::Subscribe` [INFO] [stdout] help: the return type of this call is `kameo_actors::pubsub::Subscribe` due to the type of the argument passed [INFO] [stdout] --> src/pubsub.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 27 | pubsub_actor_ref.tell(Subscribe(actor_ref)).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^--------------------^ [INFO] [stdout] | | [INFO] [stdout] | this argument influences the return type of `tell` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kameo-0.17.0/src/actor/actor_ref.rs:527:12 [INFO] [stdout] | [INFO] [stdout] 527 | pub fn tell(&self, msg: M) -> TellRequest<'_, A, M, WithoutRequestTimeout> [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/pubsub.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 28 | pubsub_actor_ref.tell(Publish("Hello, spawned world!")).await?; [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&str`, found `Publish<&str>` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&'static str` [INFO] [stdout] found struct `kameo_actors::pubsub::Publish<&str>` [INFO] [stdout] help: the return type of this call is `kameo_actors::pubsub::Publish<&str>` due to the type of the argument passed [INFO] [stdout] --> src/pubsub.rs:44:1 [INFO] [stdout] | [INFO] [stdout] 28 | pubsub_actor_ref.tell(Publish("Hello, spawned world!")).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^--------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this argument influences the return type of `tell` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kameo-0.17.0/src/actor/actor_ref.rs:527:12 [INFO] [stdout] | [INFO] [stdout] 527 | pub fn tell(&self, msg: M) -> TellRequest<'_, A, M, WithoutRequestTimeout> [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/broker.rs - broker (line 16) [INFO] [stdout] src/message_bus.rs - message_bus (line 16) [INFO] [stdout] src/message_queue.rs - message_queue (line 17) [INFO] [stdout] src/pubsub.rs - pubsub (line 19) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 4 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.35s [INFO] [stdout] [INFO] [stdout] all doctests ran in 2.58s; merged doctests compilation took 0.22s [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "590d92ca96e4816b822743e46b63d15e61766282ef8be53384ef0e959d033f67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "590d92ca96e4816b822743e46b63d15e61766282ef8be53384ef0e959d033f67", kill_on_drop: false }` [INFO] [stdout] 590d92ca96e4816b822743e46b63d15e61766282ef8be53384ef0e959d033f67