[INFO] fetching crate mml-lib 1.1.1... [INFO] testing mml-lib-1.1.1 against 1.91.0 for beta-1.92-2 [INFO] extracting crate mml-lib 1.1.1 into /workspace/builds/worker-0-tc1/source [INFO] started tweaking crates.io crate mml-lib 1.1.1 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate mml-lib 1.1.1 [INFO] tweaked toml for crates.io crate mml-lib 1.1.1 written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate mml-lib 1.1.1 on toolchain 1.91.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate mml-lib 1.1.1 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" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded shellexpand v3.1.0 [INFO] [stderr] Downloaded env_filter v0.1.2 [INFO] [stderr] Downloaded shellexpand-utils v0.2.1 [INFO] [stderr] Downloaded test-log-macros v0.2.16 [INFO] [stderr] Downloaded env_logger v0.11.5 [INFO] [stderr] Downloaded darling_macro v0.14.4 [INFO] [stderr] Downloaded crc24 v0.1.6 [INFO] [stderr] Downloaded derive_builder_macro v0.12.0 [INFO] [stderr] Downloaded test-log v0.2.16 [INFO] [stderr] Downloaded cstr-argument v0.1.2 [INFO] [stderr] Downloaded sec1 v0.7.3 [INFO] [stderr] Downloaded idea v0.5.1 [INFO] [stderr] Downloaded concat-with v0.2.9 [INFO] [stderr] Downloaded gpgme-sys v0.11.0 [INFO] [stderr] Downloaded winreg v0.52.0 [INFO] [stderr] Downloaded custom_derive v0.1.7 [INFO] [stderr] Downloaded gpg-error v0.6.2 [INFO] [stderr] Downloaded gpgme v0.11.0 [INFO] [stderr] Downloaded jni v0.19.0 [INFO] [stderr] Downloaded ureq v3.0.0-rc3 [INFO] [stderr] Downloaded camellia v0.1.0 [INFO] [stderr] Downloaded chumsky v1.0.0-alpha.7 [INFO] [stderr] Downloaded dbus v0.9.7 [INFO] [stderr] Downloaded webpki-root-certs v0.26.7 [INFO] [stderr] Downloaded p256 v0.13.2 [INFO] [stderr] Downloaded p384 v0.13.0 [INFO] [stderr] Downloaded rsa v0.9.7 [INFO] [stderr] Downloaded x25519-dalek v2.0.1 [INFO] [stderr] Downloaded keyring-lib v1.0.2 [INFO] [stderr] Downloaded cc v1.2.3 [INFO] [stderr] Downloaded rustls v0.23.19 [INFO] [stderr] Downloaded regex-syntax v0.7.5 [INFO] [stderr] Downloaded security-framework v3.0.1 [INFO] [stderr] Downloaded bstr v1.11.0 [INFO] [stderr] Downloaded rustls-platform-verifier v0.3.4 [INFO] [stderr] Downloaded darling_core v0.14.4 [INFO] [stderr] Downloaded elliptic-curve v0.13.8 [INFO] [stderr] Downloaded keyring v3.6.1 [INFO] [stderr] Downloaded serde_derive v1.0.215 [INFO] [stderr] Downloaded mail-parser v0.9.4 [INFO] [stderr] Downloaded serde v1.0.215 [INFO] [stderr] Downloaded ureq-proto v0.2.0 [INFO] [stderr] Downloaded rustls-pki-types v1.10.0 [INFO] [stderr] Downloaded secret-service v4.0.0 [INFO] [stderr] Downloaded async-broadcast v0.7.1 [INFO] [stderr] Downloaded build-rs v0.1.2 [INFO] [stderr] Downloaded regex-automata v0.3.9 [INFO] [stderr] Downloaded mail-builder v0.3.2 [INFO] [stderr] Downloaded pgp v0.10.2 [INFO] [stderr] Downloaded rustls-native-certs v0.7.3 [INFO] [stderr] Downloaded rustls-platform-verifier-android v0.1.1 [INFO] [stderr] Downloaded libc v0.2.168 [INFO] [stderr] Downloaded cast5 v0.11.1 [INFO] [stderr] Downloaded cfb-mode v0.8.2 [INFO] [stderr] Downloaded derive_builder_core v0.12.0 [INFO] [stderr] Downloaded derive_builder v0.12.0 [INFO] [stderr] Downloaded des v0.8.1 [INFO] [stderr] Downloaded ecdsa v0.16.9 [INFO] [stderr] Downloaded primeorder v0.13.6 [INFO] [stderr] Downloaded dbus-secret-service v4.0.3 [INFO] [stderr] Downloaded linux-keyutils v0.2.4 [INFO] [stderr] Downloaded block-padding v0.3.3 [INFO] [stderr] Downloaded secret-lib v1.0.0 [INFO] [stderr] Downloaded libgpg-error-sys v0.6.2 [INFO] [stderr] Downloaded nanohtml2text v0.1.5 [INFO] [stderr] Downloaded buffer-redux v1.0.2 [INFO] [stderr] Downloaded darling v0.14.4 [INFO] [stderr] Downloaded ripemd v0.1.3 [INFO] [stderr] Downloaded z-base-32 v0.1.4 [INFO] [stderr] Downloaded security-framework-sys v2.12.1 [INFO] [stderr] Downloaded conv v0.3.3 [INFO] [stderr] Downloaded http-lib v0.1.0 [INFO] [stderr] Downloaded bitfield v0.14.0 [INFO] [stderr] Downloaded blowfish v0.9.1 [INFO] [stderr] Downloaded pgp-lib v1.0.0 [INFO] [stderr] Downloaded twofish v0.7.1 [INFO] [stderr] Downloaded process-lib v1.0.0 [INFO] [stderr] Downloaded cbc v0.1.2 [INFO] [stderr] Downloaded libdbus-sys v0.2.5 [INFO] [stderr] Downloaded openssl-src v300.4.1+3.4.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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 68719a38783f4020c9b9fa6b9a7a50d66c74aec8c2072b8c2d846ebb4b3c7424 [INFO] running `Command { std: "docker" "start" "-a" "68719a38783f4020c9b9fa6b9a7a50d66c74aec8c2072b8c2d846ebb4b3c7424", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "68719a38783f4020c9b9fa6b9a7a50d66c74aec8c2072b8c2d846ebb4b3c7424", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "68719a38783f4020c9b9fa6b9a7a50d66c74aec8c2072b8c2d846ebb4b3c7424", kill_on_drop: false }` [INFO] [stdout] 68719a38783f4020c9b9fa6b9a7a50d66c74aec8c2072b8c2d846ebb4b3c7424 [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3946e6c206846e01920f068b6ed8ef18ecb78ce27e1a28dadb246fe19f737e41 [INFO] running `Command { std: "docker" "start" "-a" "3946e6c206846e01920f068b6ed8ef18ecb78ce27e1a28dadb246fe19f737e41", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling libc v0.2.168 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling os_str_bytes v6.6.1 [INFO] [stderr] Compiling chumsky v1.0.0-alpha.7 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling pin-project-lite v0.2.15 [INFO] [stderr] Compiling mail-parser v0.9.4 [INFO] [stderr] Compiling nanohtml2text v0.1.5 [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling bstr v1.11.0 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling gethostname v0.4.3 [INFO] [stderr] Compiling syn v2.0.90 [INFO] [stderr] Compiling mail-builder v0.3.2 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling shellexpand v3.1.0 [INFO] [stderr] Compiling tree_magic_mini v3.1.6 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling async-recursion v1.1.1 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling shellexpand-utils v0.2.1 [INFO] [stderr] Compiling mml-lib v1.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:222:70 [INFO] [stdout] | [INFO] [stdout] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:245:63 [INFO] [stdout] | [INFO] [stdout] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:365:65 [INFO] [stdout] | [INFO] [stdout] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/parsers/vals.rs:49:43 [INFO] [stdout] | [INFO] [stdout] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<&str, Val, ParserError> + Clone { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | | | | [INFO] [stdout] | | | | | the same lifetime is hidden here [INFO] [stdout] | | | | the same lifetime is hidden here [INFO] [stdout] | | | the same lifetime is elided here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<'_, &str, Val<'_>, ParserError<'_>> + Clone { [INFO] [stdout] | +++ ++++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/compiler.rs:124:27 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | || [INFO] [stdout] | | |the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is elided here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/compiler.rs:129:27 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn to_msg_builder(&self) -> MessageBuilder { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 129 | pub fn to_msg_builder(&self) -> MessageBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.00s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: chumsky v1.0.0-alpha.7 [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" "3946e6c206846e01920f068b6ed8ef18ecb78ce27e1a28dadb246fe19f737e41", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3946e6c206846e01920f068b6ed8ef18ecb78ce27e1a28dadb246fe19f737e41", kill_on_drop: false }` [INFO] [stdout] 3946e6c206846e01920f068b6ed8ef18ecb78ce27e1a28dadb246fe19f737e41 [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 01e348f31bc922ab6e379abb5c0041aae212e8b352b9dd3423af2454f808422e [INFO] running `Command { std: "docker" "start" "-a" "01e348f31bc922ab6e379abb5c0041aae212e8b352b9dd3423af2454f808422e", kill_on_drop: false }` [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling rustix v0.38.42 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling linux-raw-sys v0.4.14 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling socket2 v0.5.8 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Compiling test-log-macros v0.2.16 [INFO] [stderr] Compiling bytes v1.9.0 [INFO] [stderr] Compiling concat-with v0.2.9 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling tokio v1.42.0 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling tempfile v3.14.0 [INFO] [stderr] Compiling bstr v1.11.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling shellexpand v3.1.0 [INFO] [stderr] Compiling shellexpand-utils v0.2.1 [INFO] [stderr] Compiling mml-lib v1.1.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling test-log v0.2.16 [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:222:70 [INFO] [stdout] | [INFO] [stdout] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:245:63 [INFO] [stdout] | [INFO] [stdout] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:365:65 [INFO] [stdout] | [INFO] [stdout] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/parsers/vals.rs:49:43 [INFO] [stdout] | [INFO] [stdout] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<&str, Val, ParserError> + Clone { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | | | | [INFO] [stdout] | | | | | the same lifetime is hidden here [INFO] [stdout] | | | | the same lifetime is hidden here [INFO] [stdout] | | | the same lifetime is elided here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<'_, &str, Val<'_>, ParserError<'_>> + Clone { [INFO] [stdout] | +++ ++++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/compiler.rs:124:27 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | || [INFO] [stdout] | | |the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is elided here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/compiler.rs:129:27 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn to_msg_builder(&self) -> MessageBuilder { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 129 | pub fn to_msg_builder(&self) -> MessageBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:222:70 [INFO] [stdout] | [INFO] [stdout] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:245:63 [INFO] [stdout] | [INFO] [stdout] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/mod.rs:365:65 [INFO] [stdout] | [INFO] [stdout] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result { [INFO] [stdout] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/body/compiler/parsers/vals.rs:49:43 [INFO] [stdout] | [INFO] [stdout] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<&str, Val, ParserError> + Clone { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | | | | [INFO] [stdout] | | | | | the same lifetime is hidden here [INFO] [stdout] | | | | the same lifetime is hidden here [INFO] [stdout] | | | the same lifetime is elided here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<'_, &str, Val<'_>, ParserError<'_>> + Clone { [INFO] [stdout] | +++ ++++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/compiler.rs:124:27 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | || [INFO] [stdout] | | |the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is elided here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/message/compiler.rs:129:27 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn to_msg_builder(&self) -> MessageBuilder { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 129 | pub fn to_msg_builder(&self) -> MessageBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 19.38s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: chumsky v1.0.0-alpha.7 [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" "01e348f31bc922ab6e379abb5c0041aae212e8b352b9dd3423af2454f808422e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "01e348f31bc922ab6e379abb5c0041aae212e8b352b9dd3423af2454f808422e", kill_on_drop: false }` [INFO] [stdout] 01e348f31bc922ab6e379abb5c0041aae212e8b352b9dd3423af2454f808422e [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.91.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 9c7ae84de0c566c147fa31f35a82587641ee3e7f8df018668ae1d7ea3d5cb22a [INFO] running `Command { std: "docker" "start" "-a" "9c7ae84de0c566c147fa31f35a82587641ee3e7f8df018668ae1d7ea3d5cb22a", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/message/body/compiler/mod.rs:222:70 [INFO] [stderr] | [INFO] [stderr] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result { [INFO] [stderr] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | | [INFO] [stderr] | | the lifetime is named here [INFO] [stderr] | the lifetime is named here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 222 | async fn compile_parts(&'a self, parts: Vec>) -> Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/message/body/compiler/mod.rs:245:63 [INFO] [stderr] | [INFO] [stderr] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result { [INFO] [stderr] | -- -- ^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | | [INFO] [stderr] | | the lifetime is named here [INFO] [stderr] | the lifetime is named here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 245 | async fn compile_part(&'a self, part: Part<'a>) -> Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/message/body/compiler/mod.rs:365:65 [INFO] [stderr] | [INFO] [stderr] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result { [INFO] [stderr] | -- -- ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | | [INFO] [stderr] | | the lifetime is named here [INFO] [stderr] | the lifetime is named here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 365 | pub async fn compile(&'a self, mml_body: &'a str) -> Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/message/body/compiler/parsers/vals.rs:49:43 [INFO] [stderr] | [INFO] [stderr] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<&str, Val, ParserError> + Clone { [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | | | | | [INFO] [stderr] | | | | | the same lifetime is hidden here [INFO] [stderr] | | | | the same lifetime is hidden here [INFO] [stderr] | | | the same lifetime is elided here [INFO] [stderr] | | the same lifetime is hidden here [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 49 | pub(crate) fn maybe_quoted_const_val(val: &str) -> impl Parser<'_, &str, Val<'_>, ParserError<'_>> + Clone { [INFO] [stderr] | +++ ++++ ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/message/compiler.rs:124:27 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] | | || [INFO] [stderr] | | |the same lifetime is hidden here [INFO] [stderr] | | the same lifetime is elided here [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 124 | pub fn as_msg_builder(&self) -> &MessageBuilder<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/message/compiler.rs:129:27 [INFO] [stderr] | [INFO] [stderr] 129 | pub fn to_msg_builder(&self) -> MessageBuilder { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 129 | pub fn to_msg_builder(&self) -> MessageBuilder<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `mml-lib` (lib) generated 6 warnings (run `cargo fix --lib -p mml-lib` to apply 6 suggestions) [INFO] [stderr] warning: `mml-lib` (lib test) generated 6 warnings (6 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: chumsky v1.0.0-alpha.7 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mml-884639fbe5d86660) [INFO] [stdout] [INFO] [stdout] running 48 tests [INFO] [stdout] test message::body::compiler::parsers::parts::tests::multi_part ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::adjacent_multi_part ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::attachment ... ok [INFO] [stdout] test message::body::compiler::parsers::vals::tests::maybe_quoted_val ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::nested_multi_part ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::single_html_part ... ok [INFO] [stdout] test message::body::compiler::parsers::vals::tests::quoted_val ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::single_part_new_line ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::simple_mml ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::single_part_no_new_line ... ok [INFO] [stdout] test message::body::compiler::parsers::vals::tests::val ... ok [INFO] [stdout] test message::body::compiler::parsers::parts::tests::advanced_mml ... ok [INFO] [stdout] test message::body::compiler::tests::plain ... ok [INFO] [stdout] test message::body::compiler::tests::html ... ok [INFO] [stdout] test message::body::interpreter::tests::attachment ... ok [INFO] [stdout] test message::body::interpreter::tests::hide_parts_single_html ... ok [INFO] [stdout] test message::body::interpreter::tests::hide_parts_multipart_mixed ... ok [INFO] [stdout] test message::body::interpreter::tests::multipart_alternative_text_all_with_empty_plain ... ok [INFO] [stdout] test message::body::interpreter::tests::multipart_alternative_text_all_without_plain_nor_html ... ok [INFO] [stdout] test message::body::interpreter::tests::nested_multiparts_with_markup ... ok [INFO] [stdout] test message::body::interpreter::tests::multipart_alternative_text_all_without_plain ... ok [INFO] [stdout] test message::body::interpreter::tests::only_text_html ... ok [INFO] [stdout] test message::body::interpreter::tests::all_text ... ok [INFO] [stdout] test message::body::interpreter::tests::multipart_alternative_text_html_only ... ok [INFO] [stdout] test message::compiler::tests::message_id_with_angles ... ok [INFO] [stdout] test message::body::interpreter::tests::only_text_other ... ok [INFO] [stdout] test message::body::interpreter::tests::nested_multiparts ... ok [INFO] [stdout] test message::header::tests::display_addrs ... ok [INFO] [stdout] test message::header::tests::display_content_type ... ok [INFO] [stdout] test message::header::tests::display_empty_addr ... ok [INFO] [stdout] test message::header::tests::display_groups ... ok [INFO] [stdout] test message::body::interpreter::tests::multipart_alternative_text_all ... ok [INFO] [stdout] test message::compiler::tests::non_ascii_headers ... ok [INFO] [stdout] test message::compiler::tests::message_id_without_angles ... ok [INFO] [stdout] test message::header::tests::display_nameless_addr ... ok [INFO] [stdout] test message::body::interpreter::tests::only_text_plain ... ok [INFO] [stdout] test message::header::tests::display_subtypeless_content_type ... ok [INFO] [stdout] test message::header::tests::display_texts ... ok [INFO] [stdout] test message::header::tests::display_named_group ... ok [INFO] [stdout] test message::header::tests::display_named_addr ... ok [INFO] [stdout] test message::header::tests::display_nameless_group ... ok [INFO] [stdout] test message::compiler::tests::mml_markup_unescaped ... ok [INFO] [stdout] test message::body::compiler::tests::attachment ... ok [INFO] [stdout] test message::interpreter::tests::mml_markup_escaped ... ok [INFO] [stdout] test message::interpreter::tests::no_headers ... ok [INFO] [stdout] test message::interpreter::tests::only_headers ... ok [INFO] [stdout] test message::interpreter::tests::only_headers_duplicated ... ok [INFO] [stdout] test message::interpreter::tests::all_headers ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 48 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/pgp-commands.rs (/opt/rustwide/target/debug/deps/pgp_commands-895029f049216abb) [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] Running tests/pgp-gpg.rs (/opt/rustwide/target/debug/deps/pgp_gpg-3a4a262754b05c32) [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] Running tests/pgp-native.rs (/opt/rustwide/target/debug/deps/pgp_native-5c4055656b2b6cca) [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 mml [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" "9c7ae84de0c566c147fa31f35a82587641ee3e7f8df018668ae1d7ea3d5cb22a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9c7ae84de0c566c147fa31f35a82587641ee3e7f8df018668ae1d7ea3d5cb22a", kill_on_drop: false }` [INFO] [stdout] 9c7ae84de0c566c147fa31f35a82587641ee3e7f8df018668ae1d7ea3d5cb22a