[INFO] fetching crate cometbft-light-client-verifier 0.1.0-alpha.2...
[INFO] testing cometbft-light-client-verifier-0.1.0-alpha.2 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate cometbft-light-client-verifier 0.1.0-alpha.2 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate cometbft-light-client-verifier 0.1.0-alpha.2
[INFO] finished tweaking crates.io crate cometbft-light-client-verifier 0.1.0-alpha.2
[INFO] tweaked toml for crates.io crate cometbft-light-client-verifier 0.1.0-alpha.2 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate cometbft-light-client-verifier 0.1.0-alpha.2 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 75 packages to latest compatible versions
[INFO] [stderr]       Adding derive_more v0.99.20 (available: v2.0.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded subtle-ng v2.5.0
[INFO] [stderr]   Downloaded prost-types v0.12.6
[INFO] [stderr]   Downloaded prost-derive v0.12.6
[INFO] [stderr]   Downloaded ed25519-consensus v2.1.0
[INFO] [stderr]   Downloaded prost v0.12.6
[INFO] [stderr]   Downloaded flex-error v0.4.4
[INFO] [stderr]   Downloaded cometbft-proto v0.1.0-alpha.2
[INFO] [stderr]   Downloaded subtle-encoding v0.5.1
[INFO] [stderr]   Downloaded cometbft v0.1.0-alpha.2
[INFO] [stderr]   Downloaded curve25519-dalek-ng v4.1.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 13185b24503abec2bac99147eefb6da70c33c62d1391d1dfa90d2f63ad914f48
[INFO] running `Command { std: "docker" "start" "-a" "13185b24503abec2bac99147eefb6da70c33c62d1391d1dfa90d2f63ad914f48", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "13185b24503abec2bac99147eefb6da70c33c62d1391d1dfa90d2f63ad914f48", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "13185b24503abec2bac99147eefb6da70c33c62d1391d1dfa90d2f63ad914f48", kill_on_drop: false }`
[INFO] [stdout] 13185b24503abec2bac99147eefb6da70c33c62d1391d1dfa90d2f63ad914f48
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1cf0cd9eccd006b2dbb55695a72c5d431e56b58654cedac2104182419dbbc817
[INFO] running `Command { std: "docker" "start" "-a" "1cf0cd9eccd006b2dbb55695a72c5d431e56b58654cedac2104182419dbbc817", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling deranged v0.5.5
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling subtle-ng v2.5.0
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling flex-error v0.4.4
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling prost-derive v0.12.6
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling curve25519-dalek-ng v4.1.1
[INFO] [stderr]    Compiling subtle-encoding v0.5.1
[INFO] [stderr]    Compiling ed25519-consensus v2.1.0
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling prost v0.12.6
[INFO] [stderr]    Compiling prost-types v0.12.6
[INFO] [stderr]    Compiling cometbft-proto v0.1.0-alpha.2
[INFO] [stderr]    Compiling cometbft v0.1.0-alpha.2
[INFO] [stderr]    Compiling cometbft-light-client-verifier v0.1.0-alpha.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: value assigned to `trust_threshold` is never read
[INFO] [stdout]   --> src/options.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub trust_threshold: TrustThreshold,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `trusting_period` is never read
[INFO] [stdout]   --> src/options.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub trusting_period: Duration,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `clock_drift` is never read
[INFO] [stdout]   --> src/options.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub clock_drift: Duration,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `signed_header` is never read
[INFO] [stdout]    --> src/types.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub signed_header: SignedHeader,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `validators` is never read
[INFO] [stdout]    --> src/types.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub validators: ValidatorSet,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_validators` is never read
[INFO] [stdout]    --> src/types.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub next_validators: ValidatorSet,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `provider` is never read
[INFO] [stdout]    --> src/types.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     pub provider: PeerId,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `height` is never read
[INFO] [stdout]    --> src/types.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub height: Option<u64>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `block_hash` is never read
[INFO] [stdout]    --> src/types.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub block_hash: Option<Hash>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `valset_hash` is never read
[INFO] [stdout]    --> src/types.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub valset_hash: Option<Hash>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `connected_nodes` is never read
[INFO] [stdout]    --> src/types.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     pub connected_nodes: Vec<PeerId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.06s
[INFO] running `Command { std: "docker" "inspect" "1cf0cd9eccd006b2dbb55695a72c5d431e56b58654cedac2104182419dbbc817", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1cf0cd9eccd006b2dbb55695a72c5d431e56b58654cedac2104182419dbbc817", kill_on_drop: false }`
[INFO] [stdout] 1cf0cd9eccd006b2dbb55695a72c5d431e56b58654cedac2104182419dbbc817
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c429a11424e108eba92433aa31038e66ca85258acc925ca5855986dd21ad2961
[INFO] running `Command { std: "docker" "start" "-a" "c429a11424e108eba92433aa31038e66ca85258acc925ca5855986dd21ad2961", kill_on_drop: false }`
[INFO] [stdout] warning: value assigned to `trust_threshold` is never read
[INFO] [stdout]   --> src/options.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub trust_threshold: TrustThreshold,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `trusting_period` is never read
[INFO] [stdout]   --> src/options.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub trusting_period: Duration,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `clock_drift` is never read
[INFO] [stdout]   --> src/options.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub clock_drift: Duration,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `signed_header` is never read
[INFO] [stdout]    --> src/types.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub signed_header: SignedHeader,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `validators` is never read
[INFO] [stdout]    --> src/types.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub validators: ValidatorSet,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_validators` is never read
[INFO] [stdout]    --> src/types.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub next_validators: ValidatorSet,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `provider` is never read
[INFO] [stdout]    --> src/types.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     pub provider: PeerId,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `height` is never read
[INFO] [stdout]    --> src/types.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub height: Option<u64>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `block_hash` is never read
[INFO] [stdout]    --> src/types.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub block_hash: Option<Hash>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `valset_hash` is never read
[INFO] [stdout]    --> src/types.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub valset_hash: Option<Hash>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `connected_nodes` is never read
[INFO] [stdout]    --> src/types.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     pub connected_nodes: Vec<PeerId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cometbft-light-client-verifier v0.1.0-alpha.2 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]    --> src/operations/voting_power.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |     use cometbft_testgen::{
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `cometbft_testgen`, use `cargo add cometbft_testgen` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]    --> src/predicates.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     use cometbft_testgen::{
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `cometbft_testgen`, use `cargo add cometbft_testgen` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `cometbft_testgen`
[INFO] [stdout]    --> src/operations/voting_power.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |     use cometbft_testgen::{
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `cometbft_testgen`, use `cargo add cometbft_testgen` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]    --> src/verifier.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |     use cometbft_testgen::{light_block::LightBlock as TestgenLightBlock, Generator};
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `cometbft_testgen`, use `cargo add cometbft_testgen` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `cometbft_testgen`
[INFO] [stdout]    --> src/predicates.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     use cometbft_testgen::{
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `cometbft_testgen`, use `cargo add cometbft_testgen` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `cometbft_testgen`
[INFO] [stdout]    --> src/verifier.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |     use cometbft_testgen::{light_block::LightBlock as TestgenLightBlock, Generator};
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `cometbft_testgen`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `cometbft_testgen`, use `cargo add cometbft_testgen` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/operations/voting_power.rs:309:52
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let validator_set = ValidatorSet::new(vec!["a", "b"]);
[INFO] [stdout]     |                                                    ^^^ expected `Info`, found `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> src/operations/voting_power.rs:309:29
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let validator_set = ValidatorSet::new(vec!["a", "b"]);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^---------------- argument #2 of type `core::option::Option<cometbft::validator::Info>` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/cometbft-0.1.0-alpha.2/src/validator.rs:33:12
[INFO] [stdout]     |
[INFO] [stdout]  33 |     pub fn new(validators: Vec<Info>, proposer: Option<Info>) -> Set {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let validator_set = ValidatorSet::new(vec!["a", "b"], /* core::option::Option<cometbft::validator::Info> */);
[INFO] [stdout]     |                                                             +++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `validators` of struct `Set` is private
[INFO] [stdout]    --> src/operations/voting_power.rs:310:42
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let vals = validator_set.clone().validators.unwrap();
[INFO] [stdout]     |                                          ^^^^^^^^^^ private field
[INFO] [stdout]     |
[INFO] [stdout] help: a method `validators` also exists, call it with parentheses
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let vals = validator_set.clone().validators().unwrap();
[INFO] [stdout]     |                                                    ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_with_votes` found for struct `cometbft::block::Commit` in the current scope
[INFO] [stdout]    --> src/operations/voting_power.rs:316:30
[INFO] [stdout]     |
[INFO] [stdout] 316 |         let commit = Commit::new_with_votes(header.clone(), 1, votes);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^ function or associated item not found in `cometbft::block::Commit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `generate` found for struct `Set` in the current scope
[INFO] [stdout]    --> src/operations/voting_power.rs:318:36
[INFO] [stdout]     |
[INFO] [stdout] 318 |         let valset = validator_set.generate().unwrap();
[INFO] [stdout]     |                                    ^^^^^^^^ method not found in `Set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/operations/voting_power.rs:385:57
[INFO] [stdout]     |
[INFO] [stdout] 385 |         light_block.validators = ValidatorSet::new(vec!["bad-val1", "bad-val2"])
[INFO] [stdout]     |                                                         ^^^^^^^^^^ expected `Info`, found `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> src/operations/voting_power.rs:385:34
[INFO] [stdout]     |
[INFO] [stdout] 385 |         light_block.validators = ValidatorSet::new(vec!["bad-val1", "bad-val2"])
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^------------------------------ argument #2 of type `core::option::Option<cometbft::validator::Info>` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/cometbft-0.1.0-alpha.2/src/validator.rs:33:12
[INFO] [stdout]     |
[INFO] [stdout]  33 |     pub fn new(validators: Vec<Info>, proposer: Option<Info>) -> Set {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 385 |         light_block.validators = ValidatorSet::new(vec!["bad-val1", "bad-val2"], /* core::option::Option<cometbft::validator::Info> */)
[INFO] [stdout]     |                                                                                +++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `generate` found for struct `Set` in the current scope
[INFO] [stdout]    --> src/operations/voting_power.rs:386:14
[INFO] [stdout]     |
[INFO] [stdout] 385 |           light_block.validators = ValidatorSet::new(vec!["bad-val1", "bad-val2"])
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 386 | |             .generate()
[INFO] [stdout]     | |             -^^^^^^^^ method not found in `Set`
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `now_utc` found for struct `OffsetDateTime` in the current scope
[INFO] [stdout]     --> src/predicates.rs:340:35
[INFO] [stdout]      |
[INFO] [stdout]  340 |         let now = OffsetDateTime::now_utc().try_into().unwrap();
[INFO] [stdout]      |                                   ^^^^^^^ function or associated item not found in `OffsetDateTime`
[INFO] [stdout]      |
[INFO] [stdout] note: if you're trying to build a new `OffsetDateTime` consider using one of the following associated functions:
[INFO] [stdout]       OffsetDateTime::new_in_offset
[INFO] [stdout]       OffsetDateTime::new_utc
[INFO] [stdout]       OffsetDateTime::from_unix_timestamp
[INFO] [stdout]       OffsetDateTime::from_unix_timestamp_nanos
[INFO] [stdout]       OffsetDateTime::parse
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/time-0.3.44/src/offset_date_time.rs:148:5
[INFO] [stdout]      |
[INFO] [stdout]  148 |       pub const fn new_in_offset(date: Date, time: Time, offset: UtcOffset) -> Self {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  168 |       pub const fn new_utc(date: Date, time: Time) -> Self {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  434 |       pub const fn from_unix_timestamp(timestamp: i64) -> Result<Self, error::ComponentRange> {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  485 |       pub const fn from_unix_timestamp_nanos(timestamp: i128) -> Result<Self, error::ComponentRange> {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1451 | /     pub fn parse(
[INFO] [stdout] 1452 | |         input: &str,
[INFO] [stdout] 1453 | |         description: &(impl Parsable + ?Sized),
[INFO] [stdout] 1454 | |     ) -> Result<Self, error::Parse> {
[INFO] [stdout]      | |___________________________________^
[INFO] [stdout] help: there is an associated function `new_utc` with a similar name
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/time-0.3.44/src/offset_date_time.rs:168:5
[INFO] [stdout]      |
[INFO] [stdout]  168 |     pub const fn new_utc(date: Date, time: Time) -> Self {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `now_utc` found for struct `OffsetDateTime` in the current scope
[INFO] [stdout]     --> src/predicates.rs:368:35
[INFO] [stdout]      |
[INFO] [stdout]  368 |         let now = OffsetDateTime::now_utc().try_into().unwrap();
[INFO] [stdout]      |                                   ^^^^^^^ function or associated item not found in `OffsetDateTime`
[INFO] [stdout]      |
[INFO] [stdout] note: if you're trying to build a new `OffsetDateTime` consider using one of the following associated functions:
[INFO] [stdout]       OffsetDateTime::new_in_offset
[INFO] [stdout]       OffsetDateTime::new_utc
[INFO] [stdout]       OffsetDateTime::from_unix_timestamp
[INFO] [stdout]       OffsetDateTime::from_unix_timestamp_nanos
[INFO] [stdout]       OffsetDateTime::parse
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/time-0.3.44/src/offset_date_time.rs:148:5
[INFO] [stdout]      |
[INFO] [stdout]  148 |       pub const fn new_in_offset(date: Date, time: Time, offset: UtcOffset) -> Self {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  168 |       pub const fn new_utc(date: Date, time: Time) -> Self {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  434 |       pub const fn from_unix_timestamp(timestamp: i64) -> Result<Self, error::ComponentRange> {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  485 |       pub const fn from_unix_timestamp_nanos(timestamp: i128) -> Result<Self, error::ComponentRange> {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1451 | /     pub fn parse(
[INFO] [stdout] 1452 | |         input: &str,
[INFO] [stdout] 1453 | |         description: &(impl Parsable + ?Sized),
[INFO] [stdout] 1454 | |     ) -> Result<Self, error::Parse> {
[INFO] [stdout]      | |___________________________________^
[INFO] [stdout] help: there is an associated function `new_utc` with a similar name
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/time-0.3.44/src/offset_date_time.rs:168:5
[INFO] [stdout]      |
[INFO] [stdout]  168 |     pub const fn new_utc(date: Date, time: Time) -> Self {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `now` found for struct `cometbft::Time` in the current scope
[INFO] [stdout]    --> src/verifier.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |         let now = Time::now();
[INFO] [stdout]     |                         ^^^ function or associated item not found in `cometbft::Time`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `cometbft::Time` consider using one of the following associated functions:
[INFO] [stdout]       cometbft::Time::unix_epoch
[INFO] [stdout]       cometbft::Time::from_unix_timestamp
[INFO] [stdout]       cometbft::Time::parse_from_rfc3339
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/cometbft-0.1.0-alpha.2/src/time.rs:84:5
[INFO] [stdout]     |
[INFO] [stdout]  84 |     pub fn unix_epoch() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn from_unix_timestamp(secs: i64, nanos: u32) -> Result<Self, Error> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn parse_from_rfc3339(s: &str) -> Result<Self, Error> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `now` found for struct `cometbft::Time` in the current scope
[INFO] [stdout]    --> src/verifier.rs:376:19
[INFO] [stdout]     |
[INFO] [stdout] 376 |             Time::now(),
[INFO] [stdout]     |                   ^^^ function or associated item not found in `cometbft::Time`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `cometbft::Time` consider using one of the following associated functions:
[INFO] [stdout]       cometbft::Time::unix_epoch
[INFO] [stdout]       cometbft::Time::from_unix_timestamp
[INFO] [stdout]       cometbft::Time::parse_from_rfc3339
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/cometbft-0.1.0-alpha.2/src/time.rs:84:5
[INFO] [stdout]     |
[INFO] [stdout]  84 |     pub fn unix_epoch() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn from_unix_timestamp(secs: i64, nanos: u32) -> Result<Self, Error> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn parse_from_rfc3339(s: &str) -> Result<Self, Error> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `trust_threshold` is never read
[INFO] [stdout]   --> src/options.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub trust_threshold: TrustThreshold,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `trusting_period` is never read
[INFO] [stdout]   --> src/options.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub trusting_period: Duration,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `clock_drift` is never read
[INFO] [stdout]   --> src/options.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub clock_drift: Duration,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `signed_header` is never read
[INFO] [stdout]    --> src/types.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub signed_header: SignedHeader,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `validators` is never read
[INFO] [stdout]    --> src/types.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub validators: ValidatorSet,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_validators` is never read
[INFO] [stdout]    --> src/types.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub next_validators: ValidatorSet,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `provider` is never read
[INFO] [stdout]    --> src/types.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     pub provider: PeerId,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `height` is never read
[INFO] [stdout]    --> src/types.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub height: Option<u64>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `block_hash` is never read
[INFO] [stdout]    --> src/types.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub block_hash: Option<Hash>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `valset_hash` is never read
[INFO] [stdout]    --> src/types.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub valset_hash: Option<Hash>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `connected_nodes` is never read
[INFO] [stdout]    --> src/types.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     pub connected_nodes: Vec<PeerId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0308, E0432, E0433, E0599, E0616.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cometbft-light-client-verifier` (lib test) due to 18 previous errors; 11 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "c429a11424e108eba92433aa31038e66ca85258acc925ca5855986dd21ad2961", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c429a11424e108eba92433aa31038e66ca85258acc925ca5855986dd21ad2961", kill_on_drop: false }`
[INFO] [stdout] c429a11424e108eba92433aa31038e66ca85258acc925ca5855986dd21ad2961
