[INFO] fetching crate lnp2p 0.9.2...
[INFO] testing lnp2p-0.9.2 against 1.91.0 for beta-1.92-2
[INFO] extracting crate lnp2p 0.9.2 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate lnp2p 0.9.2
[INFO] finished tweaking crates.io crate lnp2p 0.9.2
[INFO] tweaked toml for crates.io crate lnp2p 0.9.2 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate lnp2p 0.9.2 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] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 120 packages to latest compatible versions
[INFO] [stderr]       Adding amplify v3.14.2 (available: v4.9.0)
[INFO] [stderr]       Adding bitcoin v0.29.2 (available: v0.32.7)
[INFO] [stderr]       Adding bitcoin_scripts v0.9.1 (available: v0.10.0)
[INFO] [stderr]       Adding bp-core v0.9.0 (available: v0.12.0)
[INFO] [stderr]       Adding miniscript v9.2.1 (available: v13.0.0)
[INFO] [stderr]       Adding psbt v0.9.0 (available: v0.10.2)
[INFO] [stderr]       Adding secp256k1 v0.24.3 (available: v0.31.1)
[INFO] [stderr]       Adding serde_with v1.14.0 (available: v3.15.1)
[INFO] [stderr]       Adding strict_encoding v0.9.0 (available: v2.9.1)
[INFO] [stderr]       Adding subtle v2.4.1 (available: v2.6.1)
[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]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_str_helpers v0.1.2
[INFO] [stderr]   Downloaded stringly_conversions v0.1.1
[INFO] [stderr]   Downloaded amplify_derive v2.11.3
[INFO] [stderr]   Downloaded strict_encoding_derive v0.9.0
[INFO] [stderr]   Downloaded bitcoin_blockchain v0.9.1
[INFO] [stderr]   Downloaded bitcoin_onchain v0.9.0
[INFO] [stderr]   Downloaded strict_encoding v0.9.0
[INFO] [stderr]   Downloaded bp-core v0.9.0
[INFO] [stderr]   Downloaded amplify v3.14.2
[INFO] [stderr]   Downloaded amplify_syn v1.1.6
[INFO] [stderr]   Downloaded lnpbp_chain v0.9.0
[INFO] [stderr]   Downloaded inet2_derive v0.9.0
[INFO] [stderr]   Downloaded deflate v1.0.0
[INFO] [stderr]   Downloaded bitcoin_hashes v0.11.0
[INFO] [stderr]   Downloaded lightning_encoding_derive v0.9.1
[INFO] [stderr]   Downloaded amplify_num v0.4.1
[INFO] [stderr]   Downloaded lnpbp v0.9.0
[INFO] [stderr]   Downloaded bitcoin_hd v0.9.0
[INFO] [stderr]   Downloaded bp-dbc v0.9.0
[INFO] [stderr]   Downloaded secp256k1 v0.24.3
[INFO] [stderr]   Downloaded lightning_encoding v0.9.3
[INFO] [stderr]   Downloaded bitcoin v0.29.2
[INFO] [stderr]   Downloaded encoding_derive_helpers v0.9.0
[INFO] [stderr]   Downloaded bitcoin_scripts v0.9.1
[INFO] [stderr]   Downloaded slip132 v0.9.0
[INFO] [stderr]   Downloaded single_use_seals v0.9.0
[INFO] [stderr]   Downloaded psbt v0.9.0
[INFO] [stderr]   Downloaded internet2 v0.9.0
[INFO] [stderr]   Downloaded stability v0.1.1
[INFO] [stderr]   Downloaded bp-seals v0.9.0
[INFO] [stderr]   Downloaded commit_verify v0.9.0
[INFO] [stderr]   Downloaded inet2_addr v0.9.0
[INFO] [stderr]   Downloaded secp256k1-sys v0.6.1
[INFO] [stderr]   Downloaded encoding_derive_helpers v0.8.1
[INFO] [stderr]   Downloaded miniscript v9.2.1
[INFO] [stderr]   Downloaded lnpbp_bech32 v0.9.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] e7b9c8f424603af19c72d91dcaa713257894a83e7784444cff5044c6f277b191
[INFO] running `Command { std: "docker" "start" "-a" "e7b9c8f424603af19c72d91dcaa713257894a83e7784444cff5044c6f277b191", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e7b9c8f424603af19c72d91dcaa713257894a83e7784444cff5044c6f277b191", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e7b9c8f424603af19c72d91dcaa713257894a83e7784444cff5044c6f277b191", kill_on_drop: false }`
[INFO] [stdout] e7b9c8f424603af19c72d91dcaa713257894a83e7784444cff5044c6f277b191
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 3bccff7ffcd48d1e9da1bd6a9b17849f0b734ea671aea2147c3eddae39d8fd14
[INFO] running `Command { std: "docker" "start" "-a" "3bccff7ffcd48d1e9da1bd6a9b17849f0b734ea671aea2147c3eddae39d8fd14", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling amplify_num v0.4.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling bitcoin_hashes v0.11.0
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling adler32 v1.2.0
[INFO] [stderr]    Compiling secp256k1-sys v0.6.1
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling stringly_conversions v0.1.1
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling deflate v1.0.0
[INFO] [stderr]    Compiling inflate v0.4.5
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling cipher v0.3.0
[INFO] [stderr]    Compiling universal-hash v0.4.1
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling aead v0.4.3
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling poly1305 v0.7.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling chacha20 v0.8.2
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling chacha20poly1305 v0.9.1
[INFO] [stderr]    Compiling amplify_syn v1.1.6
[INFO] [stderr]    Compiling secp256k1 v0.24.3
[INFO] [stderr]    Compiling bitcoin v0.29.2
[INFO] [stderr]    Compiling amplify_derive v2.11.3
[INFO] [stderr]    Compiling stability v0.1.1
[INFO] [stderr]    Compiling amplify v3.14.2
[INFO] [stderr]    Compiling single_use_seals v0.9.0
[INFO] [stderr]    Compiling encoding_derive_helpers v0.8.1
[INFO] [stderr]    Compiling encoding_derive_helpers v0.9.0
[INFO] [stderr]    Compiling inet2_derive v0.9.0
[INFO] [stderr]    Compiling miniscript v9.2.1
[INFO] [stderr]    Compiling slip132 v0.9.0
[INFO] [stderr]    Compiling strict_encoding_derive v0.9.0
[INFO] [stderr]    Compiling lightning_encoding_derive v0.9.1
[INFO] [stderr]    Compiling strict_encoding v0.9.0
[INFO] [stderr]    Compiling bitcoin_scripts v0.9.1
[INFO] [stderr]    Compiling commit_verify v0.9.0
[INFO] [stderr]    Compiling bitcoin_hd v0.9.0
[INFO] [stderr]    Compiling lnpbp_chain v0.9.0
[INFO] [stderr]    Compiling lnpbp_bech32 v0.9.0
[INFO] [stderr]    Compiling bitcoin_blockchain v0.9.1
[INFO] [stderr]    Compiling lnpbp v0.9.0
[INFO] [stderr]    Compiling bitcoin_onchain v0.9.0
[INFO] [stderr]    Compiling bp-dbc v0.9.0
[INFO] [stderr]    Compiling lightning_encoding v0.9.3
[INFO] [stderr]    Compiling psbt v0.9.0
[INFO] [stderr]    Compiling inet2_addr v0.9.0
[INFO] [stderr]    Compiling bp-seals v0.9.0
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr]    Compiling bp-core v0.9.0
[INFO] [stderr]    Compiling internet2 v0.9.0
[INFO] [stderr] impl < Payload : SphinxPayload > lightning_encoding :: LightningDecode for Hop
[INFO] [stderr] < Payload >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Hop
[INFO] [stderr]         {
[INFO] [stderr]             node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payload : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < const PACKET_LEN : usize > lightning_encoding :: LightningDecode for
[INFO] [stderr] SphinxPacket < PACKET_LEN >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(SphinxPacket
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < const PACKET_LEN : usize > lightning_encoding :: LightningDecode for
[INFO] [stderr] OnionPacket < PACKET_LEN >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(OnionPacket
[INFO] [stderr]         {
[INFO] [stderr]             version : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , packet :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , hmac : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr]    Compiling lnp2p v0.9.2 (/opt/rustwide/workdir)
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Init
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = Init
[INFO] [stderr]         {
[INFO] [stderr]             global_features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , local_features : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , assets :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 1usize => s.assets = lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ? , _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Ping
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Ping
[INFO] [stderr]         {
[INFO] [stderr]             pong_size : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , ignored : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Error
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Error
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , data : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for OpenChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = OpenChannel
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , temporary_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , push_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             dust_limit_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_htlc_value_in_flight_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_reserve_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_minimum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , to_self_delay
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_accepted_htlcs :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_pubkey : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , revocation_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_point : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , delayed_payment_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , shutdown_scriptpubkey : Default ::
[INFO] [stderr]             default(), channel_type : Default :: default(), unknown_tlvs :
[INFO] [stderr]             Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AcceptChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = AcceptChannel
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , dust_limit_satoshis :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , max_htlc_value_in_flight_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             channel_reserve_satoshis : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , minimum_depth : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , to_self_delay : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             max_accepted_htlcs : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_pubkey : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             revocation_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payment_point : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             delayed_payment_basepoint : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , first_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             shutdown_scriptpubkey : Default :: default(), channel_type :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingCreated
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingCreated
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_txid : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             funding_output_index : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingLocked
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingLocked
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Shutdown
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Shutdown
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , scriptpubkey : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ClosingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ClosingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateAddHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = UpdateAddHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , amount_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             onion_routing_packet : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 _ if * type_no % 2 == 0 => return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFulfillHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFulfillHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , payment_preimage
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , reason :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailMalformedHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailMalformedHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , sha256_of_onion :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , failure_code : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for CommitmentSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(CommitmentSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_signatures :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for RevokeAndAck
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(RevokeAndAck
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFee
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFee
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelReestablish
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelReestablish
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_commitment_number :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_revocation_number : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , your_last_per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , my_current_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for PaymentData
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(PaymentData
[INFO] [stderr]         {
[INFO] [stderr]             payment_secret : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , total_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TlvPayment
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = TlvPayment
[INFO] [stderr]         {
[INFO] [stderr]             amt_to_forward : Default :: default(), outgoing_cltv_value :
[INFO] [stderr]             Default :: default(), short_channel_id : Default :: default(),
[INFO] [stderr]             payment_data : Default :: default(), unknown : Default ::
[INFO] [stderr]             default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 2usize => s.amt_to_forward =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 4usize =>
[INFO] [stderr]                 s.outgoing_cltv_value =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 6usize => s.short_channel_id
[INFO] [stderr]                 =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 8usize => s.payment_data =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AnnouncementSignatures
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(AnnouncementSignatures
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelAnnouncement
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelAnnouncement
[INFO] [stderr]         {
[INFO] [stderr]             node_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_id_1 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , node_id_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_key_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_key_2 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeAnnouncements
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeAnnouncements
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , features : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , timestamp :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , rgb_color : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , alias :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , addresses : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelUpdate
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelUpdate
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , timestamp : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , message_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry_delta :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_minimum_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_base_msat : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             fee_proportional_millionths : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_maximum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryShortChannelIds
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryShortChannelIds
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_ids : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyShortChannelIdsEnd
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyShortChannelIdsEnd
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , encoded_short_ids : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for GossipTimestampFilter
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(GossipTimestampFilter
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_timestamp : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             timestamp_range : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ActiveChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(match u8 :: lightning_decode(& mut d) ?
[INFO] [stderr]         {
[INFO] [stderr]             x if x == 0 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Temporary
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } x if x == 1 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Static
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } unknown =>
[INFO] [stderr]             Err(lightning_encoding :: Error ::
[INFO] [stderr]             EnumValueNotKnown("ActiveChannelId", unknown as usize)) ?
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TempChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(TempChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Alias
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Alias
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ShortChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ShortChannelId
[INFO] [stderr]         {
[INFO] [stderr]             block_height : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , tx_index : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , output_index :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stdout] warning: struct `InitContext` is never constructed
[INFO] [stdout]   --> src/bolt/bolt9.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct InitContext;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     dead_code,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeAnnouncementContext` is never constructed
[INFO] [stdout]   --> src/bolt/bolt9.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub struct NodeAnnouncementContext;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChannelAnnouncementContext` is never constructed
[INFO] [stdout]    --> src/bolt/bolt9.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct ChannelAnnouncementContext;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bolt11Context` is never constructed
[INFO] [stdout]    --> src/bolt/bolt9.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct Bolt11Context;
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.35s
[INFO] running `Command { std: "docker" "inspect" "3bccff7ffcd48d1e9da1bd6a9b17849f0b734ea671aea2147c3eddae39d8fd14", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3bccff7ffcd48d1e9da1bd6a9b17849f0b734ea671aea2147c3eddae39d8fd14", kill_on_drop: false }`
[INFO] [stdout] 3bccff7ffcd48d1e9da1bd6a9b17849f0b734ea671aea2147c3eddae39d8fd14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] f563c95f5a0e24ff6d424da7972c0a41bbd1c45dabb9e26b03e70e521105a4ec
[INFO] running `Command { std: "docker" "start" "-a" "f563c95f5a0e24ff6d424da7972c0a41bbd1c45dabb9e26b03e70e521105a4ec", kill_on_drop: false }`
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < Payload : SphinxPayload > lightning_encoding :: LightningDecode for Hop
[INFO] [stderr] < Payload >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Hop
[INFO] [stderr]         {
[INFO] [stderr]             node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payload : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < const PACKET_LEN : usize > lightning_encoding :: LightningDecode for
[INFO] [stderr] SphinxPacket < PACKET_LEN >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(SphinxPacket
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < const PACKET_LEN : usize > lightning_encoding :: LightningDecode for
[INFO] [stderr] OnionPacket < PACKET_LEN >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(OnionPacket
[INFO] [stderr]         {
[INFO] [stderr]             version : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , packet :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , hmac : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Init
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = Init
[INFO] [stderr]         {
[INFO] [stderr]             global_features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , local_features : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , assets :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 1usize => s.assets = lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ? , _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Ping
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Ping
[INFO] [stderr]         {
[INFO] [stderr]             pong_size : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , ignored : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Error
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Error
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , data : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for OpenChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = OpenChannel
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , temporary_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , push_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             dust_limit_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_htlc_value_in_flight_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_reserve_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_minimum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , to_self_delay
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_accepted_htlcs :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_pubkey : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , revocation_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_point : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , delayed_payment_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , shutdown_scriptpubkey : Default ::
[INFO] [stderr]             default(), channel_type : Default :: default(), unknown_tlvs :
[INFO] [stderr]             Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AcceptChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = AcceptChannel
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , dust_limit_satoshis :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , max_htlc_value_in_flight_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             channel_reserve_satoshis : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , minimum_depth : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , to_self_delay : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             max_accepted_htlcs : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_pubkey : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             revocation_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payment_point : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             delayed_payment_basepoint : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , first_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             shutdown_scriptpubkey : Default :: default(), channel_type :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingCreated
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingCreated
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_txid : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             funding_output_index : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingLocked
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingLocked
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Shutdown
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Shutdown
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , scriptpubkey : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ClosingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ClosingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateAddHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = UpdateAddHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , amount_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             onion_routing_packet : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 _ if * type_no % 2 == 0 => return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFulfillHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFulfillHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , payment_preimage
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , reason :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailMalformedHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailMalformedHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , sha256_of_onion :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , failure_code : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for CommitmentSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(CommitmentSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_signatures :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for RevokeAndAck
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(RevokeAndAck
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , per_commitment_secret :
[INFO] [stdout] warning: struct `InitContext` is never constructed
[INFO] [stdout]   --> src/bolt/bolt9.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct InitContext;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     dead_code,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stdout] warning: struct `NodeAnnouncementContext` is never constructed
[INFO] [stdout]   --> src/bolt/bolt9.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub struct NodeAnnouncementContext;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             ? , next_per_commitment_point : lightning_encoding ::
[INFO] [stdout] warning: struct `ChannelAnnouncementContext` is never constructed
[INFO] [stdout]    --> src/bolt/bolt9.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct ChannelAnnouncementContext;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stdout] warning: struct `Bolt11Context` is never constructed
[INFO] [stdout]    --> src/bolt/bolt9.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct Bolt11Context;
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFee
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFee
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelReestablish
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelReestablish
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_commitment_number :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_revocation_number : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , your_last_per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , my_current_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for PaymentData
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(PaymentData
[INFO] [stderr]         {
[INFO] [stderr]             payment_secret : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , total_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TlvPayment
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = TlvPayment
[INFO] [stderr]         {
[INFO] [stderr]             amt_to_forward : Default :: default(), outgoing_cltv_value :
[INFO] [stderr]             Default :: default(), short_channel_id : Default :: default(),
[INFO] [stderr]             payment_data : Default :: default(), unknown : Default ::
[INFO] [stderr]             default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 2usize => s.amt_to_forward =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 4usize =>
[INFO] [stderr]                 s.outgoing_cltv_value =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 6usize => s.short_channel_id
[INFO] [stderr]                 =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 8usize => s.payment_data =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AnnouncementSignatures
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(AnnouncementSignatures
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelAnnouncement
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelAnnouncement
[INFO] [stderr]         {
[INFO] [stderr]             node_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_id_1 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , node_id_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_key_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_key_2 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeAnnouncements
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeAnnouncements
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , features : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , timestamp :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , rgb_color : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , alias :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , addresses : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelUpdate
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelUpdate
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , timestamp : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , message_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry_delta :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_minimum_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_base_msat : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             fee_proportional_millionths : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_maximum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryShortChannelIds
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryShortChannelIds
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_ids : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyShortChannelIdsEnd
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyShortChannelIdsEnd
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , encoded_short_ids : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for GossipTimestampFilter
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(GossipTimestampFilter
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_timestamp : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             timestamp_range : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ActiveChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(match u8 :: lightning_decode(& mut d) ?
[INFO] [stderr]         {
[INFO] [stderr]             x if x == 0 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Temporary
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } x if x == 1 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Static
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } unknown =>
[INFO] [stderr]             Err(lightning_encoding :: Error ::
[INFO] [stderr]             EnumValueNotKnown("ActiveChannelId", unknown as usize)) ?
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TempChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(TempChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Alias
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Alias
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ShortChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ShortChannelId
[INFO] [stderr]         {
[INFO] [stderr]             block_height : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , tx_index : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , output_index :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr]    Compiling lnp2p v0.9.2 (/opt/rustwide/workdir)
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Init
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = Init
[INFO] [stderr]         {
[INFO] [stderr]             global_features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , local_features : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , assets :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 1usize => s.assets = lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ? , _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Ping
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Ping
[INFO] [stderr]         {
[INFO] [stderr]             pong_size : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , ignored : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Error
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Error
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , data : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for OpenChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = OpenChannel
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , temporary_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , push_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             dust_limit_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_htlc_value_in_flight_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_reserve_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_minimum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , to_self_delay
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_accepted_htlcs :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_pubkey : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , revocation_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_point : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , delayed_payment_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , shutdown_scriptpubkey : Default ::
[INFO] [stderr]             default(), channel_type : Default :: default(), unknown_tlvs :
[INFO] [stderr]             Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AcceptChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = AcceptChannel
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , dust_limit_satoshis :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , max_htlc_value_in_flight_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             channel_reserve_satoshis : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , minimum_depth : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , to_self_delay : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             max_accepted_htlcs : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_pubkey : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             revocation_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payment_point : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             delayed_payment_basepoint : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , first_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             shutdown_scriptpubkey : Default :: default(), channel_type :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingCreated
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingCreated
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_txid : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             funding_output_index : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingLocked
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingLocked
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Shutdown
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Shutdown
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , scriptpubkey : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ClosingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ClosingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateAddHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = UpdateAddHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , amount_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             onion_routing_packet : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 _ if * type_no % 2 == 0 => return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFulfillHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFulfillHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , payment_preimage
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , reason :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailMalformedHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailMalformedHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , sha256_of_onion :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , failure_code : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for CommitmentSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(CommitmentSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_signatures :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for RevokeAndAck
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(RevokeAndAck
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFee
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFee
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelReestablish
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelReestablish
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_commitment_number :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_revocation_number : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , your_last_per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , my_current_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for PaymentData
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(PaymentData
[INFO] [stderr]         {
[INFO] [stderr]             payment_secret : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , total_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TlvPayment
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = TlvPayment
[INFO] [stderr]         {
[INFO] [stderr]             amt_to_forward : Default :: default(), outgoing_cltv_value :
[INFO] [stderr]             Default :: default(), short_channel_id : Default :: default(),
[INFO] [stderr]             payment_data : Default :: default(), unknown : Default ::
[INFO] [stderr]             default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 2usize => s.amt_to_forward =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 4usize =>
[INFO] [stderr]                 s.outgoing_cltv_value =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 6usize => s.short_channel_id
[INFO] [stderr]                 =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 8usize => s.payment_data =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AnnouncementSignatures
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(AnnouncementSignatures
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelAnnouncement
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelAnnouncement
[INFO] [stderr]         {
[INFO] [stderr]             node_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_id_1 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , node_id_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_key_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_key_2 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeAnnouncements
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeAnnouncements
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , features : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , timestamp :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , rgb_color : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , alias :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , addresses : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelUpdate
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelUpdate
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , timestamp : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , message_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry_delta :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_minimum_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_base_msat : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             fee_proportional_millionths : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_maximum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryShortChannelIds
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryShortChannelIds
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_ids : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyShortChannelIdsEnd
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyShortChannelIdsEnd
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , encoded_short_ids : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for GossipTimestampFilter
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(GossipTimestampFilter
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_timestamp : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             timestamp_range : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ActiveChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(match u8 :: lightning_decode(& mut d) ?
[INFO] [stderr]         {
[INFO] [stderr]             x if x == 0 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Temporary
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } x if x == 1 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Static
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } unknown =>
[INFO] [stderr]             Err(lightning_encoding :: Error ::
[INFO] [stderr]             EnumValueNotKnown("ActiveChannelId", unknown as usize)) ?
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TempChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(TempChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Alias
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Alias
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ShortChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ShortChannelId
[INFO] [stderr]         {
[INFO] [stderr]             block_height : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , tx_index : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , output_index :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stdout] warning: struct `InitContext` is never constructed
[INFO] [stdout]   --> src/bolt/bolt9.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct InitContext;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     dead_code,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeAnnouncementContext` is never constructed
[INFO] [stdout]   --> src/bolt/bolt9.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub struct NodeAnnouncementContext;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChannelAnnouncementContext` is never constructed
[INFO] [stdout]    --> src/bolt/bolt9.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct ChannelAnnouncementContext;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bolt11Context` is never constructed
[INFO] [stdout]    --> src/bolt/bolt9.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct Bolt11Context;
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.61s
[INFO] running `Command { std: "docker" "inspect" "f563c95f5a0e24ff6d424da7972c0a41bbd1c45dabb9e26b03e70e521105a4ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f563c95f5a0e24ff6d424da7972c0a41bbd1c45dabb9e26b03e70e521105a4ec", kill_on_drop: false }`
[INFO] [stdout] f563c95f5a0e24ff6d424da7972c0a41bbd1c45dabb9e26b03e70e521105a4ec
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 4e57fbe784db6154e798cb43307a0871892c67cb3eab56052feda44412419143
[INFO] running `Command { std: "docker" "start" "-a" "4e57fbe784db6154e798cb43307a0871892c67cb3eab56052feda44412419143", kill_on_drop: false }`
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < Payload : SphinxPayload > lightning_encoding :: LightningDecode for Hop
[INFO] [stderr] < Payload >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Hop
[INFO] [stderr]         {
[INFO] [stderr]             node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payload : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < const PACKET_LEN : usize > lightning_encoding :: LightningDecode for
[INFO] [stderr] SphinxPacket < PACKET_LEN >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(SphinxPacket
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl < const PACKET_LEN : usize > lightning_encoding :: LightningDecode for
[INFO] [stderr] OnionPacket < PACKET_LEN >
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(OnionPacket
[INFO] [stderr]         {
[INFO] [stderr]             version : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , packet :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , hmac : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Init
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = Init
[INFO] [stderr]         {
[INFO] [stderr]             global_features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , local_features : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , assets :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 1usize => s.assets = lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ? , _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Ping
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Ping
[INFO] [stderr]         {
[INFO] [stderr]             pong_size : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , ignored : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Error
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Error
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , data : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for OpenChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = OpenChannel
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , temporary_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , push_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             dust_limit_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_htlc_value_in_flight_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_reserve_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_minimum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , to_self_delay
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_accepted_htlcs :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_pubkey : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , revocation_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_point : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , delayed_payment_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , shutdown_scriptpubkey : Default ::
[INFO] [stderr]             default(), channel_type : Default :: default(), unknown_tlvs :
[INFO] [stderr]             Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AcceptChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = AcceptChannel
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , dust_limit_satoshis :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , max_htlc_value_in_flight_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             channel_reserve_satoshis : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , minimum_depth : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , to_self_delay : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             max_accepted_htlcs : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_pubkey : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             revocation_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payment_point : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             delayed_payment_basepoint : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , first_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             shutdown_scriptpubkey : Default :: default(), channel_type :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingCreated
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingCreated
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_txid : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             funding_output_index : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingLocked
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingLocked
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Shutdown
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Shutdown
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , scriptpubkey : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ClosingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ClosingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateAddHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = UpdateAddHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , amount_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             onion_routing_packet : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 _ if * type_no % 2 == 0 => return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFulfillHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFulfillHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , payment_preimage
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , reason :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailMalformedHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailMalformedHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , sha256_of_onion :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , failure_code : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for CommitmentSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(CommitmentSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_signatures :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for RevokeAndAck
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(RevokeAndAck
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFee
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFee
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelReestablish
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelReestablish
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_commitment_number :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_revocation_number : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , your_last_per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , my_current_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for PaymentData
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(PaymentData
[INFO] [stderr]         {
[INFO] [stderr]             payment_secret : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , total_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TlvPayment
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = TlvPayment
[INFO] [stderr]         {
[INFO] [stderr]             amt_to_forward : Default :: default(), outgoing_cltv_value :
[INFO] [stderr]             Default :: default(), short_channel_id : Default :: default(),
[INFO] [stderr]             payment_data : Default :: default(), unknown : Default ::
[INFO] [stderr]             default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 2usize => s.amt_to_forward =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 4usize =>
[INFO] [stderr]                 s.outgoing_cltv_value =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 6usize => s.short_channel_id
[INFO] [stderr]                 =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 8usize => s.payment_data =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AnnouncementSignatures
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(AnnouncementSignatures
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelAnnouncement
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelAnnouncement
[INFO] [stderr]         {
[INFO] [stderr]             node_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_id_1 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , node_id_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_key_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_key_2 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeAnnouncements
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeAnnouncements
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , features : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , timestamp :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , rgb_color : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , alias :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , addresses : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelUpdate
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelUpdate
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , timestamp : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , message_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry_delta :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_minimum_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_base_msat : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             fee_proportional_millionths : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_maximum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryShortChannelIds
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryShortChannelIds
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_ids : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyShortChannelIdsEnd
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyShortChannelIdsEnd
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , encoded_short_ids : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for GossipTimestampFilter
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(GossipTimestampFilter
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_timestamp : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             timestamp_range : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ActiveChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(match u8 :: lightning_decode(& mut d) ?
[INFO] [stderr]         {
[INFO] [stderr]             x if x == 0 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Temporary
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } x if x == 1 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Static
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } unknown =>
[INFO] [stderr]             Err(lightning_encoding :: Error ::
[INFO] [stderr]             EnumValueNotKnown("ActiveChannelId", unknown as usize)) ?
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TempChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(TempChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Alias
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Alias
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ShortChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ShortChannelId
[INFO] [stderr]         {
[INFO] [stderr]             block_height : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , tx_index : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , output_index :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] warning: struct `InitContext` is never constructed
[INFO] [stderr]   --> src/bolt/bolt9.rs:91:12
[INFO] [stderr]    |
[INFO] [stderr] 91 | pub struct InitContext;
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 |     dead_code,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NodeAnnouncementContext` is never constructed
[INFO] [stderr]   --> src/bolt/bolt9.rs:99:12
[INFO] [stderr]    |
[INFO] [stderr] 99 | pub struct NodeAnnouncementContext;
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChannelAnnouncementContext` is never constructed
[INFO] [stderr]    --> src/bolt/bolt9.rs:107:12
[INFO] [stderr]     |
[INFO] [stderr] 107 | pub struct ChannelAnnouncementContext;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Bolt11Context` is never constructed
[INFO] [stderr]    --> src/bolt/bolt9.rs:115:12
[INFO] [stderr]     |
[INFO] [stderr] 115 | pub struct Bolt11Context;
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Init
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = Init
[INFO] [stderr]         {
[INFO] [stderr]             global_features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , local_features : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , assets :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 1usize => s.assets = lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ? , _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Ping
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Ping
[INFO] [stderr]         {
[INFO] [stderr]             pong_size : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , ignored : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Error
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Error
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , data : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for OpenChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = OpenChannel
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , temporary_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , push_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             dust_limit_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_htlc_value_in_flight_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_reserve_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_minimum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , to_self_delay
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_accepted_htlcs :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_pubkey : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , revocation_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_point : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , delayed_payment_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , shutdown_scriptpubkey : Default ::
[INFO] [stderr]             default(), channel_type : Default :: default(), unknown_tlvs :
[INFO] [stderr]             Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AcceptChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = AcceptChannel
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , dust_limit_satoshis :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , max_htlc_value_in_flight_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             channel_reserve_satoshis : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , minimum_depth : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , to_self_delay : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             max_accepted_htlcs : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_pubkey : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             revocation_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payment_point : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             delayed_payment_basepoint : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , first_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             shutdown_scriptpubkey : Default :: default(), channel_type :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingCreated
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingCreated
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_txid : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             funding_output_index : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingLocked
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingLocked
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Shutdown
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Shutdown
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , scriptpubkey : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ClosingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ClosingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateAddHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = UpdateAddHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , amount_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             onion_routing_packet : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 _ if * type_no % 2 == 0 => return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFulfillHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFulfillHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , payment_preimage
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , reason :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailMalformedHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailMalformedHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , sha256_of_onion :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , failure_code : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for CommitmentSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(CommitmentSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_signatures :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for RevokeAndAck
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(RevokeAndAck
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFee
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFee
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelReestablish
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelReestablish
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_commitment_number :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_revocation_number : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , your_last_per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , my_current_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for PaymentData
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(PaymentData
[INFO] [stderr]         {
[INFO] [stderr]             payment_secret : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , total_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TlvPayment
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = TlvPayment
[INFO] [stderr]         {
[INFO] [stderr]             amt_to_forward : Default :: default(), outgoing_cltv_value :
[INFO] [stderr]             Default :: default(), short_channel_id : Default :: default(),
[INFO] [stderr]             payment_data : Default :: default(), unknown : Default ::
[INFO] [stderr]             default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 2usize => s.amt_to_forward =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 4usize =>
[INFO] [stderr]                 s.outgoing_cltv_value =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 6usize => s.short_channel_id
[INFO] [stderr]                 =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 8usize => s.payment_data =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AnnouncementSignatures
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(AnnouncementSignatures
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelAnnouncement
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelAnnouncement
[INFO] [stderr]         {
[INFO] [stderr]             node_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_id_1 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , node_id_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_key_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_key_2 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeAnnouncements
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeAnnouncements
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , features : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , timestamp :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , rgb_color : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , alias :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , addresses : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelUpdate
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelUpdate
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , timestamp : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , message_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry_delta :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_minimum_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_base_msat : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             fee_proportional_millionths : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_maximum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryShortChannelIds
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryShortChannelIds
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_ids : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyShortChannelIdsEnd
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyShortChannelIdsEnd
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , encoded_short_ids : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for GossipTimestampFilter
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(GossipTimestampFilter
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_timestamp : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             timestamp_range : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ActiveChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(match u8 :: lightning_decode(& mut d) ?
[INFO] [stderr]         {
[INFO] [stderr]             x if x == 0 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Temporary
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } x if x == 1 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Static
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } unknown =>
[INFO] [stderr]             Err(lightning_encoding :: Error ::
[INFO] [stderr]             EnumValueNotKnown("ActiveChannelId", unknown as usize)) ?
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TempChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(TempChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Alias
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Alias
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ShortChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ShortChannelId
[INFO] [stderr]         {
[INFO] [stderr]             block_height : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , tx_index : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , output_index :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] warning: `lnp2p` (lib) generated 4 warnings
[INFO] [stderr] warning: `lnp2p` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lnp2p-c706aab5b699cec4)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test bolt::bolt2::test::decode_static_remotekey_channel_type ... ok
[INFO] [stdout] test bolt::bolt1::test::default_init ... ok
[INFO] [stdout] test bolt::types::test::test_address_encodings ... ok
[INFO] [stdout] test bolt::bolt1::test::real_clightning_testvec ... ok
[INFO] [stdout] test bolt::bolt1::test::real_lnd_testvec ... ok
[INFO] [stdout] test bolt::bolt2::test::real_clightning_accept_message ... ok
[INFO] [stdout] test bolt::bolt2::test::real_clightning_open_channel ... ok
[INFO] [stdout] test bolt::bolt2::test::real_clightning_close_message ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests lnp2p
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Init
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = Init
[INFO] [stderr]         {
[INFO] [stderr]             global_features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , local_features : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , assets :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 1usize => s.assets = lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ? , _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Ping
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Ping
[INFO] [stderr]         {
[INFO] [stderr]             pong_size : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , ignored : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Error
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Error
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , data : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for OpenChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = OpenChannel
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , temporary_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , push_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             dust_limit_satoshis : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_htlc_value_in_flight_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_reserve_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_minimum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? , to_self_delay
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , max_accepted_htlcs :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , funding_pubkey : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , revocation_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_point : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , delayed_payment_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , shutdown_scriptpubkey : Default ::
[INFO] [stderr]             default(), channel_type : Default :: default(), unknown_tlvs :
[INFO] [stderr]             Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AcceptChannel
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = AcceptChannel
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , dust_limit_satoshis :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , max_htlc_value_in_flight_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             channel_reserve_satoshis : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , minimum_depth : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , to_self_delay : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             max_accepted_htlcs : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_pubkey : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             revocation_basepoint : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , payment_point : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             delayed_payment_basepoint : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , htlc_basepoint :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , first_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             shutdown_scriptpubkey : Default :: default(), channel_type :
[INFO] [stderr]             Default :: default(), unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 0usize => s.shutdown_scriptpubkey =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 1usize => s.channel_type =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingCreated
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingCreated
[INFO] [stderr]         {
[INFO] [stderr]             temporary_channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , funding_txid : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             funding_output_index : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for FundingLocked
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(FundingLocked
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_per_commitment_point :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Shutdown
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Shutdown
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , scriptpubkey : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ClosingSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ClosingSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_satoshis : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateAddHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = UpdateAddHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , amount_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , payment_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             onion_routing_packet : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , unknown_tlvs : Default :: default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 _ if * type_no % 2 == 0 => return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown_tlvs.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFulfillHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFulfillHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , payment_preimage
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , reason :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFailMalformedHtlc
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFailMalformedHtlc
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , htlc_id : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , sha256_of_onion :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , failure_code : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for CommitmentSigned
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(CommitmentSigned
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , signature : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_signatures :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for RevokeAndAck
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(RevokeAndAck
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for UpdateFee
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(UpdateFee
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , feerate_per_kw : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelReestablish
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelReestablish
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , next_commitment_number :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , next_revocation_number : lightning_encoding :: LightningDecode
[INFO] [stderr]             :: lightning_decode(& mut d) ? , your_last_per_commitment_secret :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , my_current_per_commitment_point : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for PaymentData
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(PaymentData
[INFO] [stderr]         {
[INFO] [stderr]             payment_secret : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , total_msat : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TlvPayment
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode; let mut s = TlvPayment
[INFO] [stderr]         {
[INFO] [stderr]             amt_to_forward : Default :: default(), outgoing_cltv_value :
[INFO] [stderr]             Default :: default(), short_channel_id : Default :: default(),
[INFO] [stderr]             payment_data : Default :: default(), unknown : Default ::
[INFO] [stderr]             default(),
[INFO] [stderr]         }; let tlvs = internet2 :: tlv :: Stream :: lightning_decode(& mut d)
[INFO] [stderr]         ? ; for (type_no, bytes) in tlvs
[INFO] [stderr]         {
[INFO] [stderr]             match * type_no as usize
[INFO] [stderr]             {
[INFO] [stderr]                 2usize => s.amt_to_forward =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 4usize =>
[INFO] [stderr]                 s.outgoing_cltv_value =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 6usize => s.short_channel_id
[INFO] [stderr]                 =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), 8usize => s.payment_data =
[INFO] [stderr]                 Some(lightning_encoding :: LightningDecode ::
[INFO] [stderr]                 lightning_deserialize(bytes) ?), _ if * type_no % 2 == 0 =>
[INFO] [stderr]                 return
[INFO] [stderr]                 Err(lightning_encoding :: TlvError ::
[INFO] [stderr]                 UnknownEvenType(* type_no).into()), _ =>
[INFO] [stderr]                 { s.unknown.insert(type_no, bytes); },
[INFO] [stderr]             }
[INFO] [stderr]         } Ok(s)
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for AnnouncementSignatures
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(AnnouncementSignatures
[INFO] [stderr]         {
[INFO] [stderr]             channel_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_channel_id :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelAnnouncement
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelAnnouncement
[INFO] [stderr]         {
[INFO] [stderr]             node_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_signature_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_signature_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , features : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , node_id_1 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , node_id_2 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , bitcoin_key_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , bitcoin_key_2 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for NodeAnnouncements
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(NodeAnnouncements
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , features : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , timestamp :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , node_id : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , rgb_color : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , alias :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , addresses : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelUpdate
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelUpdate
[INFO] [stderr]         {
[INFO] [stderr]             signature : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , chain_hash : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , short_channel_id
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , timestamp : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , message_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , channel_flags : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , cltv_expiry_delta :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , htlc_minimum_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , fee_base_msat : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             fee_proportional_millionths : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , htlc_maximum_msat
[INFO] [stderr]             : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryShortChannelIds
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryShortChannelIds
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , short_ids : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyShortChannelIdsEnd
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyShortChannelIdsEnd
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for QueryChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(QueryChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ReplyChannelRange
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ReplyChannelRange
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_blocknum : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             number_of_blocks : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , full_information :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? , encoded_short_ids : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for GossipTimestampFilter
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(GossipTimestampFilter
[INFO] [stderr]         {
[INFO] [stderr]             chain_hash : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , first_timestamp : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ? ,
[INFO] [stderr]             timestamp_range : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ActiveChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(match u8 :: lightning_decode(& mut d) ?
[INFO] [stderr]         {
[INFO] [stderr]             x if x == 0 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Temporary
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } x if x == 1 =>
[INFO] [stderr]             {
[INFO] [stderr]                 Self :: Static
[INFO] [stderr]                 {
[INFO] [stderr]                     0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]                     lightning_decode(& mut d) ? ,
[INFO] [stderr]                 }
[INFO] [stderr]             } unknown =>
[INFO] [stderr]             Err(lightning_encoding :: Error ::
[INFO] [stderr]             EnumValueNotKnown("ActiveChannelId", unknown as usize)) ?
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for TempChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(TempChannelId
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for Alias
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(Alias
[INFO] [stderr]         {
[INFO] [stderr]             0 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[INFO] [stderr] impl lightning_encoding :: LightningDecode for ShortChannelId
[INFO] [stderr] {
[INFO] [stderr]     #[allow(clippy :: init_numbered_fields)] fn lightning_decode < D : :: std
[INFO] [stderr]     :: io :: Read > (mut d : D) -> :: core :: result :: Result < Self,
[INFO] [stderr]     lightning_encoding :: Error >
[INFO] [stderr]     {
[INFO] [stderr]         use lightning_encoding :: LightningDecode;
[INFO] [stderr]         Ok(ShortChannelId
[INFO] [stderr]         {
[INFO] [stderr]             block_height : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ? , tx_index : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ? , output_index :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ? ,
[INFO] [stderr]         })
[INFO] [stderr]     }
[INFO] [stderr] }
[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" "4e57fbe784db6154e798cb43307a0871892c67cb3eab56052feda44412419143", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e57fbe784db6154e798cb43307a0871892c67cb3eab56052feda44412419143", kill_on_drop: false }`
[INFO] [stdout] 4e57fbe784db6154e798cb43307a0871892c67cb3eab56052feda44412419143
