[INFO] fetching crate rudelctl 0.1.0... [INFO] checking rudelctl-0.1.0 against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] extracting crate rudelctl 0.1.0 into /workspace/builds/worker-3-tc2/source [INFO] started tweaking crates.io crate rudelctl 0.1.0 [INFO] finished tweaking crates.io crate rudelctl 0.1.0 [INFO] tweaked toml for crates.io crate rudelctl 0.1.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate rudelctl 0.1.0 on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate rudelctl 0.1.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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2269a107e71ecc40589371a62f5d868879977e25ac72dd7cf11d47865aa5845c [INFO] running `Command { std: "docker" "start" "-a" "2269a107e71ecc40589371a62f5d868879977e25ac72dd7cf11d47865aa5845c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2269a107e71ecc40589371a62f5d868879977e25ac72dd7cf11d47865aa5845c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2269a107e71ecc40589371a62f5d868879977e25ac72dd7cf11d47865aa5845c", kill_on_drop: false }` [INFO] [stdout] 2269a107e71ecc40589371a62f5d868879977e25ac72dd7cf11d47865aa5845c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2c4b7a49e6c6469d4963df28751ad0712d2602a52f3341a2035736f2144c9822 [INFO] running `Command { std: "docker" "start" "-a" "2c4b7a49e6c6469d4963df28751ad0712d2602a52f3341a2035736f2144c9822", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.88 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling libc v0.2.161 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking pin-project-lite v0.2.14 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling libm v0.2.11 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Compiling rustversion v1.0.18 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling serde_json v1.0.129 [INFO] [stderr] Checking anstyle-parse v0.2.5 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Compiling rustix v0.37.27 [INFO] [stderr] Compiling itoa v1.0.11 [INFO] [stderr] Checking colorchoice v1.0.2 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking anstyle-query v1.1.1 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking bytes v1.7.2 [INFO] [stderr] Checking downcast-rs v1.2.1 [INFO] [stderr] Compiling wasmparser v0.221.2 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling libdbus-sys v0.2.5 [INFO] [stderr] Compiling polling v2.8.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking anstyle v1.0.8 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking wasmi_core v0.40.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling cc v1.2.1 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling async-io v1.13.0 [INFO] [stderr] Checking anstream v0.6.15 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Checking linux-raw-sys v0.3.8 [INFO] [stderr] Compiling rustix v0.38.42 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Compiling syn v2.0.79 [INFO] [stderr] Checking fastrand v1.9.0 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Checking waker-fn v1.2.0 [INFO] [stderr] Checking async-lock v2.8.0 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Compiling zerocopy v0.8.13 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking multi-stash v0.2.0 [INFO] [stderr] Checking wasmi_ir v0.40.0 [INFO] [stderr] Compiling thiserror v1.0.64 [INFO] [stderr] Checking wasmi_collections v0.40.0 [INFO] [stderr] Checking clap_builder v4.5.20 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking regex-automata v0.4.8 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking crc-catalog v2.4.0 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking arrayref v0.3.9 [INFO] [stderr] Checking macaddr v1.0.1 [INFO] [stderr] Checking once_cell v1.20.2 [INFO] [stderr] Checking constant_time_eq v0.3.1 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking mio v1.0.2 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Checking crc v3.2.1 [INFO] [stderr] Compiling blake3 v1.5.4 [INFO] [stderr] Checking regex v1.11.0 [INFO] [stderr] Checking tempfile v3.14.0 [INFO] [stderr] Checking env_filter v0.1.2 [INFO] [stderr] Checking env_logger v0.11.5 [INFO] [stderr] Checking futures-time v3.0.0 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Checking wasmi v0.40.0 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling pin-project-internal v1.1.6 [INFO] [stderr] Compiling zerocopy-derive v0.8.13 [INFO] [stderr] Compiling clap_derive v4.5.18 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling async-recursion v1.1.1 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking pin-project v1.1.6 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking clap v4.5.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking strum v0.26.3 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling custom_debug_derive v0.6.1 [INFO] [stderr] Checking custom_debug v0.6.1 [INFO] [stderr] Checking dbus v0.9.7 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking rudelblinken-runtime v0.1.0 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking tokio-stream v0.1.16 [INFO] [stderr] Checking dbus-tokio v0.7.6 [INFO] [stderr] Checking dbus-crossroads v0.5.2 [INFO] [stderr] Checking uuid v1.11.0 [INFO] [stderr] Compiling bluer v0.17.3 [INFO] [stderr] Checking rudelctl v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `AdapterEvent` [INFO] [stdout] --> src/main.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | use bluer::{AdapterEvent, Device}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Args` [INFO] [stdout] --> src/main.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | use clap::{Args, Parser, Subcommand}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AbortHandle`, `Abortable`, `StreamExt as STTT`, and `pin_mut` [INFO] [stdout] --> src/main.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pin_mut, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 33 | stream::{AbortHandle, Abortable}, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] 34 | StreamExt as STTT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures_time::stream::StreamExt` [INFO] [stdout] --> src/main.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | use futures_time::stream::StreamExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `future::Future` [INFO] [stdout] --> src/main.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | use std::{future::Future, path::PathBuf, time::Instant}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AdapterEvent` [INFO] [stdout] --> src/main.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | use bluer::{AdapterEvent, Device}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Args` [INFO] [stdout] --> src/main.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | use clap::{Args, Parser, Subcommand}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AbortHandle`, `Abortable`, `StreamExt as STTT`, and `pin_mut` [INFO] [stdout] --> src/main.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pin_mut, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 33 | stream::{AbortHandle, Abortable}, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] 34 | StreamExt as STTT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures_time::stream::StreamExt` [INFO] [stdout] --> src/main.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | use futures_time::stream::StreamExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `future::Future` [INFO] [stdout] --> src/main.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | use std::{future::Future, path::PathBuf, time::Instant}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `address` and `name` are never read [INFO] [stdout] --> src/emulator/emulated_host.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct EmulatedHost { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | pub address: [u8; 6], [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `address` and `name` are never read [INFO] [stdout] --> src/emulator/emulated_host.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct EmulatedHost { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | pub address: [u8; 6], [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/emulator/emulated_host.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | / caller [INFO] [stdout] 139 | | .data_mut() [INFO] [stdout] 140 | | .wasm_events [INFO] [stdout] 141 | | .blocking_send(WasmEvent::SetAdvertismentSettings(settings)); [INFO] [stdout] | |________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = caller [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/emulator/emulated_host.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | / caller [INFO] [stdout] 139 | | .data_mut() [INFO] [stdout] 140 | | .wasm_events [INFO] [stdout] 141 | | .blocking_send(WasmEvent::SetAdvertismentSettings(settings)); [INFO] [stdout] | |________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = caller [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/emulator/emulated_host.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | / caller [INFO] [stdout] 150 | | .data_mut() [INFO] [stdout] 151 | | .wasm_events [INFO] [stdout] 152 | | .blocking_send(WasmEvent::SetAdvertismentData(data.into())); [INFO] [stdout] | |_______________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 149 | let _ = caller [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/emulator/emulated_host.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | / caller [INFO] [stdout] 150 | | .data_mut() [INFO] [stdout] 151 | | .wasm_events [INFO] [stdout] 152 | | .blocking_send(WasmEvent::SetAdvertismentData(data.into())); [INFO] [stdout] | |_______________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 149 | let _ = caller [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.09s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bluer v0.17.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "2c4b7a49e6c6469d4963df28751ad0712d2602a52f3341a2035736f2144c9822", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2c4b7a49e6c6469d4963df28751ad0712d2602a52f3341a2035736f2144c9822", kill_on_drop: false }` [INFO] [stdout] 2c4b7a49e6c6469d4963df28751ad0712d2602a52f3341a2035736f2144c9822