[INFO] cloning repository https://github.com/dbowm91/i2pr [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dbowm91/i2pr" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdbowm91%2Fi2pr", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdbowm91%2Fi2pr'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ffb1f02b9103286bc1ebf230d27c600d01479e0d [INFO] checking dbowm91/i2pr against 012c0bd4d516934012c9a1ecb26e9eb283d2ed75 for pr-133502-29 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdbowm91%2Fi2pr" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config.toml [INFO] removed /workspace/builds/worker-3-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/dbowm91/i2pr [INFO] finished tweaking git repo https://github.com/dbowm91/i2pr [INFO] tweaked toml for git repo https://github.com/dbowm91/i2pr written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dbowm91/i2pr on toolchain 012c0bd4d516934012c9a1ecb26e9eb283d2ed75 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dbowm91/i2pr 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" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: unused workspace dependency `cbc` [INFO] [stderr] --> Cargo.toml:33:25 [INFO] [stderr] | [INFO] [stderr] 33 | [workspace.dependencies.cbc] [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_workspace_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the workspace dependency `cbc` [INFO] [stderr] warning: unused workspace dependency `crypto-common` [INFO] [stderr] --> Cargo.toml:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | crypto-common = "=0.2.2" [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the workspace dependency `crypto-common` [INFO] [stderr] warning: unused workspace dependency `curve25519-elligator2` [INFO] [stderr] --> Cargo.toml:57:25 [INFO] [stderr] | [INFO] [stderr] 57 | [workspace.dependencies.curve25519-elligator2] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the workspace dependency `curve25519-elligator2` [INFO] [stderr] warning: unused workspace dependency `x509-cert` [INFO] [stderr] --> Cargo.toml:163:25 [INFO] [stderr] | [INFO] [stderr] 163 | [workspace.dependencies.x509-cert] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the workspace dependency `x509-cert` [INFO] [stderr] warning: workspace (manifest) generated 4 warnings [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded elligator2 v0.1.0 [INFO] [stderr] Downloaded cpubits v0.1.1 [INFO] [stderr] Downloaded signature v3.0.0 [INFO] [stderr] Downloaded base16ct v1.0.0 [INFO] [stderr] Downloaded toml v1.1.6+spec-1.1.0 [INFO] [stderr] Downloaded spki v0.8.0 [INFO] [stderr] Downloaded pkcs8 v0.11.0 [INFO] [stderr] Downloaded pkcs1 v0.8.0-rc.4 [INFO] [stderr] Downloaded pem-rfc7468 v1.0.0 [INFO] [stderr] Downloaded rand_chacha v0.10.0 [INFO] [stderr] Downloaded der v0.8.1 [INFO] [stderr] Downloaded zerocopy v0.8.54 [INFO] [stderr] Downloaded crypto-primes v0.7.2 [INFO] [stderr] Downloaded quick-xml v0.42.0 [INFO] [stderr] Downloaded crypto-bigint v0.7.5 [INFO] [stderr] Downloaded regex-automata v0.4.15 [INFO] [stderr] Downloaded zerocopy-derive v0.8.54 [INFO] [stderr] Downloaded sad-rsa v0.10.2 [INFO] [stderr] Downloaded serdect v0.4.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906 [INFO] running `Command { std: "docker" "start" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906" "/opt/rustwide/cargo-home/bin/cargo" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906" "/opt/rustwide/cargo-home/bin/cargo" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] warning: unused workspace dependency `cbc` [INFO] [stderr] --> Cargo.toml:33:25 [INFO] [stderr] | [INFO] [stderr] 33 | [workspace.dependencies.cbc] [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_workspace_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the workspace dependency `cbc` [INFO] [stderr] warning: unused workspace dependency `crypto-common` [INFO] [stderr] --> Cargo.toml:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | crypto-common = "=0.2.2" [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the workspace dependency `crypto-common` [INFO] [stderr] warning: unused workspace dependency `curve25519-elligator2` [INFO] [stderr] --> Cargo.toml:57:25 [INFO] [stderr] | [INFO] [stderr] 57 | [workspace.dependencies.curve25519-elligator2] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the workspace dependency `curve25519-elligator2` [INFO] [stderr] warning: unused workspace dependency `x509-cert` [INFO] [stderr] --> Cargo.toml:163:25 [INFO] [stderr] | [INFO] [stderr] 163 | [workspace.dependencies.x509-cert] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the workspace dependency `x509-cert` [INFO] [stderr] warning: workspace (manifest) generated 4 warnings [INFO] [stderr] Compiling quote v1.0.46 [INFO] [stderr] Checking typenum v1.20.1 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling thiserror v2.0.20 [INFO] [stderr] Checking simd-adler32 v0.3.10 [INFO] [stderr] Checking zlib-rs v0.6.8 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Checking fiat-crypto v0.3.0 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Checking ed25519 v2.2.3 [INFO] [stderr] Compiling zerocopy v0.8.54 [INFO] [stderr] Checking memchr v2.8.3 [INFO] [stderr] Checking i2pr-core v0.1.0 (/opt/rustwide/workdir/crates/i2pr-core) [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking base64ct v1.8.3 [INFO] [stderr] Compiling find-msvc-tools v0.1.10 [INFO] [stderr] Checking cmov v0.5.4 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Checking ff v0.13.1 [INFO] [stderr] Compiling cc v1.4.2 [INFO] [stderr] Checking miniz_oxide v0.9.1 [INFO] [stderr] Compiling num-conv v0.2.2 [INFO] [stderr] Checking group v0.13.0 [INFO] [stderr] Checking getrandom v0.2.17 [INFO] [stderr] Compiling oid-registry v0.8.1 [INFO] [stderr] Checking cpubits v0.1.1 [INFO] [stderr] Compiling syn v2.0.119 [INFO] [stderr] Compiling syn v3.0.3 [INFO] [stderr] Compiling time-macros v0.2.27 [INFO] [stderr] Checking log v0.4.33 [INFO] [stderr] Checking pem-rfc7468 v1.0.0 [INFO] [stderr] Checking ctutils v0.4.2 [INFO] [stderr] Checking rand_core v0.9.5 [INFO] [stderr] Checking data-encoding v2.11.1 [INFO] [stderr] Checking bumpalo v3.20.3 [INFO] [stderr] Checking typed-path v0.12.3 [INFO] [stderr] Compiling zmij v1.0.23 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking mio v1.2.2 [INFO] [stderr] Checking socket2 v0.6.5 [INFO] [stderr] Checking zopfli v0.8.3 [INFO] [stderr] Checking siphasher v1.0.3 [INFO] [stderr] Checking futures-task v0.3.34 [INFO] [stderr] Checking winnow v1.0.4 [INFO] [stderr] Checking rustix v1.1.4 [INFO] [stderr] Checking clap_builder v4.6.7 [INFO] [stderr] Checking serde_spanned v1.1.1 [INFO] [stderr] Checking flate2 v1.1.10 [INFO] [stderr] Checking toml_datetime v1.1.1+spec-1.1.0 [INFO] [stderr] Checking toml_parser v1.1.3+spec-1.1.0 [INFO] [stderr] Checking num-integer v0.1.47 [INFO] [stderr] Checking time v0.3.47 [INFO] [stderr] Checking toml_writer v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling getrandom v0.4.3 [INFO] [stderr] Checking num-bigint v0.4.8 [INFO] [stderr] Compiling rustls v0.23.45 [INFO] [stderr] Checking regex-syntax v0.8.11 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking zip v8.6.0 [INFO] [stderr] Checking toml v1.1.6+spec-1.1.0 [INFO] [stderr] Checking pem v3.0.6 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Checking hybrid-array v0.4.14 [INFO] [stderr] Checking rusticata-macros v4.1.0 [INFO] [stderr] Checking thread_local v1.1.10 [INFO] [stderr] Checking smallvec v1.15.2 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking quick-xml v0.42.0 [INFO] [stderr] Checking regex-automata v0.4.15 [INFO] [stderr] Checking crypto-common v0.1.7 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking block-padding v0.3.3 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Checking poly1305 v0.8.0 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking yasna v0.5.2 [INFO] [stderr] Checking crypto-common v0.2.2 [INFO] [stderr] Checking block-buffer v0.12.1 [INFO] [stderr] Checking tempfile v3.27.0 [INFO] [stderr] Checking digest v0.11.3 [INFO] [stderr] Checking signature v3.0.0 [INFO] [stderr] Checking hmac v0.13.0 [INFO] [stderr] Checking sha2 v0.11.0 [INFO] [stderr] Compiling thiserror-impl v2.0.20 [INFO] [stderr] Compiling displaydoc v0.2.7 [INFO] [stderr] Compiling futures-macro v0.3.34 [INFO] [stderr] Compiling clap_derive v4.6.7 [INFO] [stderr] Checking futures-util v0.3.34 [INFO] [stderr] Checking matchers v0.2.0 [INFO] [stderr] Checking clap v4.6.7 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking rand_chacha v0.10.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling zeroize_derive v1.5.0 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling asn1-rs-impl v0.2.0 [INFO] [stderr] Compiling asn1-rs-derive v0.6.0 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Checking zeroize v1.9.0 [INFO] [stderr] Checking i2pr-proto v0.1.0 (/opt/rustwide/workdir/crates/i2pr-proto) [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking der v0.8.1 [INFO] [stderr] Checking crypto-bigint v0.7.5 [INFO] [stderr] Checking rustls-pki-types v1.15.1 [INFO] [stderr] Checking tokio v1.53.1 [INFO] [stderr] Checking asn1-rs v0.7.2 [INFO] [stderr] Checking webpki-roots v1.0.9 [INFO] [stderr] Checking chacha20 v0.9.1 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking cbc v0.1.2 [INFO] [stderr] Checking rustls-webpki v0.103.15 [INFO] [stderr] Checking rcgen v0.13.2 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Checking chacha20poly1305 v0.10.1 [INFO] [stderr] Checking tracing-subscriber v0.3.23 [INFO] [stderr] Checking ed25519-dalek v2.2.0 [INFO] [stderr] Checking x25519-dalek v2.0.1 [INFO] [stderr] Checking i2pr-transport v0.1.0 (/opt/rustwide/workdir/crates/i2pr-transport) [INFO] [stderr] Checking i2pr-service-tunnels v0.1.0 (/opt/rustwide/workdir/crates/i2pr-service-tunnels) [INFO] [stderr] Checking spki v0.8.0 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-transport/src/types.rs:65:14 [INFO] [stdout] | [INFO] [stdout] 65 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 65 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 65 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-transport/src/types.rs:115:14 [INFO] [stdout] | [INFO] [stdout] 115 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 115 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 115 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking pkcs1 v0.8.0-rc.4 [INFO] [stderr] Checking pkcs8 v0.11.0 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-transport/src/types.rs:65:14 [INFO] [stdout] | [INFO] [stdout] 65 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 65 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 65 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-transport/src/types.rs:115:14 [INFO] [stdout] | [INFO] [stdout] 115 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 115 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 115 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking der-parser v10.0.0 [INFO] [stderr] Checking elligator2 v0.1.0 [INFO] [stderr] Checking i2pr-crypto v0.1.0 (/opt/rustwide/workdir/crates/i2pr-crypto) [INFO] [stderr] Checking x509-parser v0.18.1 [INFO] [stderr] Checking i2pr-transport-ssu2 v0.1.0 (/opt/rustwide/workdir/crates/i2pr-transport-ssu2) [INFO] [stderr] Checking i2pr-transport-ntcp2 v0.1.0 (/opt/rustwide/workdir/crates/i2pr-transport-ntcp2) [INFO] [stderr] Checking i2pr-storage v0.1.0 (/opt/rustwide/workdir/crates/i2pr-storage) [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking crypto-primes v0.7.2 [INFO] [stderr] Checking i2pr-i2pcontrol v0.1.0 (/opt/rustwide/workdir/crates/i2pr-i2pcontrol) [INFO] [stderr] Checking i2pr-addressbook v0.1.0 (/opt/rustwide/workdir/crates/i2pr-addressbook) [INFO] [stderr] Checking sad-rsa v0.10.2 [INFO] [stderr] Checking tokio-util v0.7.19 [INFO] [stderr] Checking tokio-rustls v0.26.6 [INFO] [stderr] Checking i2pr-su3 v0.1.0 (/opt/rustwide/workdir/crates/i2pr-su3) [INFO] [stderr] Checking i2pr-netdb v0.1.0 (/opt/rustwide/workdir/crates/i2pr-netdb) [INFO] [stderr] Checking i2pr-runtime v0.1.0 (/opt/rustwide/workdir/crates/i2pr-runtime) [INFO] [stderr] Checking i2pr-tunnel v0.1.0 (/opt/rustwide/workdir/crates/i2pr-tunnel) [INFO] [stderr] Checking i2pr-netdb-persist v0.1.0 (/opt/rustwide/workdir/crates/i2pr-netdb-persist) [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/channel.rs:419:21 [INFO] [stdout] | [INFO] [stdout] 419 | let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 419 - let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 419 + let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/channel.rs:425:21 [INFO] [stdout] | [INFO] [stdout] 425 | let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 425 - let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 425 + let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/channel.rs:472:14 [INFO] [stdout] | [INFO] [stdout] 472 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 472 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 472 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/ntcp2_runtime.rs:1453:14 [INFO] [stdout] | [INFO] [stdout] 1453 | .fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 1453 - .fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] 1453 + .try_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/ntcp2_runtime.rs:1518:26 [INFO] [stdout] | [INFO] [stdout] 1518 | let result = counter.fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 1518 - let result = counter.fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] 1518 + let result = counter.try_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/channel.rs:419:21 [INFO] [stdout] | [INFO] [stdout] 419 | let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 419 - let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 419 + let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/channel.rs:425:21 [INFO] [stdout] | [INFO] [stdout] 425 | let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 425 - let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 425 + let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/channel.rs:472:14 [INFO] [stdout] | [INFO] [stdout] 472 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 472 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 472 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/observability.rs:256:14 [INFO] [stdout] | [INFO] [stdout] 256 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 256 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 256 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/observability.rs:268:14 [INFO] [stdout] | [INFO] [stdout] 268 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 268 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 268 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/ntcp2_runtime.rs:1453:14 [INFO] [stdout] | [INFO] [stdout] 1453 | .fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 1453 - .fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] 1453 + .try_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/ntcp2_runtime.rs:1518:26 [INFO] [stdout] | [INFO] [stdout] 1518 | let result = counter.fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 1518 - let result = counter.fetch_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] 1518 + let result = counter.try_update(Ordering::AcqRel, Ordering::Acquire, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking i2pr-client v0.1.0 (/opt/rustwide/workdir/crates/i2pr-client) [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/observability.rs:256:14 [INFO] [stdout] | [INFO] [stdout] 256 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 256 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 256 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-runtime/src/observability.rs:268:14 [INFO] [stdout] | [INFO] [stdout] 268 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 268 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 268 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking i2pr-testkit v0.1.0 (/opt/rustwide/workdir/crates/i2pr-testkit) [INFO] [stderr] Checking i2pr-interop v0.1.0 (/opt/rustwide/workdir/tools/i2pr-interop) [INFO] [stderr] Checking i2pr-api v0.1.0 (/opt/rustwide/workdir/crates/i2pr-api) [INFO] [stderr] Checking i2pr-daemon v0.1.0 (/opt/rustwide/workdir/crates/i2pr-daemon) [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/service_tunnels.rs:4505:14 [INFO] [stdout] | [INFO] [stdout] 4505 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 4505 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 4505 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/service_tunnels.rs:4505:14 [INFO] [stdout] | [INFO] [stdout] 4505 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 4505 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 4505 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:307:14 [INFO] [stdout] | [INFO] [stdout] 307 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 307 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 307 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:325:18 [INFO] [stdout] | [INFO] [stdout] 325 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 325 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 325 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:341:14 [INFO] [stdout] | [INFO] [stdout] 341 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 341 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 341 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:2246:10 [INFO] [stdout] | [INFO] [stdout] 2246 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 2246 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 2246 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:307:14 [INFO] [stdout] | [INFO] [stdout] 307 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 307 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 307 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:325:18 [INFO] [stdout] | [INFO] [stdout] 325 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 325 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 325 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:341:14 [INFO] [stdout] | [INFO] [stdout] 341 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 341 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 341 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/i2cp.rs:2246:10 [INFO] [stdout] | [INFO] [stdout] 2246 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 2246 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] 2246 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |current| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/service_tunnels.rs:263:14 [INFO] [stdout] | [INFO] [stdout] 263 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 263 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 263 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::::fetch_update`: renamed to `try_update` for consistency [INFO] [stdout] --> crates/i2pr-daemon/src/service_tunnels.rs:263:14 [INFO] [stdout] | [INFO] [stdout] 263 | .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace the use of the deprecated method [INFO] [stdout] | [INFO] [stdout] 263 - .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] 263 + .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unused dependency `i2pr-proto` [INFO] [stderr] --> crates/i2pr-service-tunnels/Cargo.toml:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | i2pr-proto = { path = "../i2pr-proto" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `i2pr-proto` [INFO] [stderr] warning: `i2pr-service-tunnels` (manifest) generated 1 warning [INFO] [stderr] warning: unused dependency `sha2` [INFO] [stderr] --> crates/i2pr-su3/Cargo.toml:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | sha2.workspace = true [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `sha2` [INFO] [stderr] warning: `i2pr-su3` (manifest) generated 1 warning [INFO] [stderr] warning: unused dependency `i2pr-core` [INFO] [stderr] --> crates/i2pr-tunnel/Cargo.toml:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | i2pr-core = { path = "../i2pr-core" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `i2pr-core` [INFO] [stderr] warning: `i2pr-tunnel` (manifest) generated 1 warning [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 51s [INFO] running `Command { std: "docker" "inspect" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906", kill_on_drop: false }` [INFO] [stdout] e755f57a39be70b839aab4e60661f15edbc116cab099bcd29ae97dd3424ed906