[INFO] fetching crate lnp-core 0.9.2...
[INFO] testing lnp-core-0.9.2 against 1.69.0 for beta-1.70-1
[INFO] extracting crate lnp-core 0.9.2 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate lnp-core 0.9.2 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-7-tc1/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate lnp-core 0.9.2
[INFO] finished tweaking crates.io crate lnp-core 0.9.2
[INFO] tweaked toml for crates.io crate lnp-core 0.9.2 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+1.69.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lnpbp v0.9.0
[INFO] [stderr]   Downloaded amplify_num v0.4.1
[INFO] [stderr]   Downloaded strict_encoding_derive v0.9.0
[INFO] [stderr]   Downloaded deflate v1.0.0
[INFO] [stderr]   Downloaded bitcoin_hashes v0.11.0
[INFO] [stderr]   Downloaded slip132 v0.9.0
[INFO] [stderr]   Downloaded bitcoin_onchain v0.9.0
[INFO] [stderr]   Downloaded lnpbp_bech32 v0.9.0
[INFO] [stderr]   Downloaded stringly_conversions v0.1.1
[INFO] [stderr]   Downloaded serde_str_helpers v0.1.2
[INFO] [stderr]   Downloaded single_use_seals v0.9.0
[INFO] [stderr]   Downloaded lightning_encoding v0.9.3
[INFO] [stderr]   Downloaded lightning_encoding_derive v0.9.1
[INFO] [stderr]   Downloaded bitcoin_scripts v0.9.1
[INFO] [stderr]   Downloaded bitcoin_blockchain v0.9.1
[INFO] [stderr]   Downloaded psbt v0.9.0
[INFO] [stderr]   Downloaded inet2_addr v0.9.0
[INFO] [stderr]   Downloaded strict_encoding v0.9.0
[INFO] [stderr]   Downloaded lnp2p v0.9.2
[INFO] [stderr]   Downloaded stability v0.1.1
[INFO] [stderr]   Downloaded inet2_derive v0.9.0
[INFO] [stderr]   Downloaded amplify_syn v1.1.6
[INFO] [stderr]   Downloaded bp-core v0.9.0
[INFO] [stderr]   Downloaded lnpbp_chain v0.9.0
[INFO] [stderr]   Downloaded commit_verify v0.9.0
[INFO] [stderr]   Downloaded descriptors v0.9.0
[INFO] [stderr]   Downloaded encoding_derive_helpers v0.9.0
[INFO] [stderr]   Downloaded encoding_derive_helpers v0.8.1
[INFO] [stderr]   Downloaded amplify_derive v2.11.3
[INFO] [stderr]   Downloaded amplify v3.14.2
[INFO] [stderr]   Downloaded bitcoin_hd v0.9.0
[INFO] [stderr]   Downloaded descriptor-wallet v0.9.2
[INFO] [stderr]   Downloaded internet2 v0.9.0
[INFO] [stderr]   Downloaded bp-dbc v0.9.0
[INFO] [stderr]   Downloaded bitcoin v0.29.2
[INFO] [stderr]   Downloaded bp-seals v0.9.0
[INFO] [stderr]   Downloaded miniscript v9.0.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:97d61d7686bf65f8ecb15491ab51835e82dc9176a96a831f143a431b191fc501" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fdcd20be217db3654109d65a16521a297a81c3497cbe690fbcb7c55600044b57
[INFO] running `Command { std: "docker" "start" "-a" "fdcd20be217db3654109d65a16521a297a81c3497cbe690fbcb7c55600044b57", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fdcd20be217db3654109d65a16521a297a81c3497cbe690fbcb7c55600044b57", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fdcd20be217db3654109d65a16521a297a81c3497cbe690fbcb7c55600044b57", kill_on_drop: false }`
[INFO] [stdout] fdcd20be217db3654109d65a16521a297a81c3497cbe690fbcb7c55600044b57
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:97d61d7686bf65f8ecb15491ab51835e82dc9176a96a831f143a431b191fc501" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dac4ca35ae81c65fdcf5625be10759524fa9373eb1584396bbf1cd8902fdcaa1
[INFO] running `Command { std: "docker" "start" "-a" "dac4ca35ae81c65fdcf5625be10759524fa9373eb1584396bbf1cd8902fdcaa1", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling amplify_num v0.4.1
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling secp256k1-sys v0.6.1
[INFO] [stderr]    Compiling paste v1.0.12
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling bitcoin_hashes v0.11.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling bech32 v0.9.1
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling stringly_conversions v0.1.1
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling iana-time-zone v0.1.56
[INFO] [stderr]    Compiling amplify_syn v1.1.6
[INFO] [stderr]    Compiling chrono v0.4.24
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling adler32 v1.2.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling deflate v1.0.0
[INFO] [stderr]    Compiling secp256k1 v0.24.3
[INFO] [stderr]    Compiling inflate v0.4.5
[INFO] [stderr]    Compiling bitcoin v0.29.2
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling zeroize v1.6.0
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling cipher v0.3.0
[INFO] [stderr]    Compiling universal-hash v0.4.1
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling poly1305 v0.7.2
[INFO] [stderr]    Compiling aead v0.4.3
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling chacha20 v0.8.2
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling chacha20poly1305 v0.9.1
[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.0.1
[INFO] [stderr]    Compiling lightning_encoding_derive v0.9.1
[INFO] [stderr]    Compiling strict_encoding_derive v0.9.0
[INFO] [stderr]    Compiling strict_encoding v0.9.0
[INFO] [stderr]    Compiling bitcoin_scripts v0.9.1
[INFO] [stderr]    Compiling slip132 v0.9.0
[INFO] [stderr]    Compiling commit_verify 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 bitcoin_hd v0.9.0
[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 descriptors v0.9.0
[INFO] [stderr]    Compiling bp-seals v0.9.0
[INFO] [stderr]    Compiling bp-core v0.9.0
[INFO] [stderr]    Compiling descriptor-wallet v0.9.2
[INFO] [stderr]    Compiling inet2_addr 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 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
[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 :: 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) ?, channel_flags :
[INFO] [stderr]             lightning_encoding :: 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 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) ?, max_accepted_htlcs
[INFO] [stderr]             : 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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?,
[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 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ?, node_signature
[INFO] [stderr]             : 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 : lightning_encoding
[INFO] [stderr]             :: 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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?, node_id_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, node_id_2 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ?, bitcoin_key_1 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, bitcoin_key_2 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?, timestamp : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, message_flags : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ?, channel_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, cltv_expiry_delta : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, fee_base_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, fee_proportional_millionths :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, htlc_maximum_msat : 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 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ?,
[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 : lightning_encoding
[INFO] [stderr]             :: 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) ?, timestamp_range
[INFO] [stderr]             : 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 lnp-core v0.9.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 20.03s
[INFO] running `Command { std: "docker" "inspect" "dac4ca35ae81c65fdcf5625be10759524fa9373eb1584396bbf1cd8902fdcaa1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dac4ca35ae81c65fdcf5625be10759524fa9373eb1584396bbf1cd8902fdcaa1", kill_on_drop: false }`
[INFO] [stdout] dac4ca35ae81c65fdcf5625be10759524fa9373eb1584396bbf1cd8902fdcaa1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:97d61d7686bf65f8ecb15491ab51835e82dc9176a96a831f143a431b191fc501" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0175152a0056c200f95e572a691961c4fef4c4dac90e158edd2420df36662cd0
[INFO] running `Command { std: "docker" "start" "-a" "0175152a0056c200f95e572a691961c4fef4c4dac90e158edd2420df36662cd0", 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 :: 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) ?, channel_flags :
[INFO] [stderr]             lightning_encoding :: 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 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) ?, max_accepted_htlcs
[INFO] [stderr]             : 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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?,
[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 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ?, node_signature
[INFO] [stderr]             : 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 : lightning_encoding
[INFO] [stderr]             :: 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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?, node_id_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, node_id_2 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ?, bitcoin_key_1 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, bitcoin_key_2 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?, timestamp : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, message_flags : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ?, channel_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, cltv_expiry_delta : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, fee_base_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, fee_proportional_millionths :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, htlc_maximum_msat : 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 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ?,
[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 : lightning_encoding
[INFO] [stderr]             :: 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) ?, timestamp_range
[INFO] [stderr]             : 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 lnp-core v0.9.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.01s
[INFO] running `Command { std: "docker" "inspect" "0175152a0056c200f95e572a691961c4fef4c4dac90e158edd2420df36662cd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0175152a0056c200f95e572a691961c4fef4c4dac90e158edd2420df36662cd0", kill_on_drop: false }`
[INFO] [stdout] 0175152a0056c200f95e572a691961c4fef4c4dac90e158edd2420df36662cd0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:97d61d7686bf65f8ecb15491ab51835e82dc9176a96a831f143a431b191fc501" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 51b5401a176603e484af034dd640bb8bc6137267a4f4a485cbf296c7ed4de2e1
[INFO] running `Command { std: "docker" "start" "-a" "51b5401a176603e484af034dd640bb8bc6137267a4f4a485cbf296c7ed4de2e1", 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 :: 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) ?, channel_flags :
[INFO] [stderr]             lightning_encoding :: 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 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) ?, max_accepted_htlcs
[INFO] [stderr]             : 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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?,
[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 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ?, node_signature
[INFO] [stderr]             : 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 : lightning_encoding
[INFO] [stderr]             :: 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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?, node_id_1 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, node_id_2 : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ?, bitcoin_key_1 :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, bitcoin_key_2 : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             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 :: lightning_decode(& mut d)
[INFO] [stderr]             ?, timestamp : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, message_flags : lightning_encoding ::
[INFO] [stderr]             LightningDecode :: lightning_decode(& mut d) ?, channel_flags :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, cltv_expiry_delta : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, htlc_minimum_msat :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, fee_base_msat : lightning_encoding :: LightningDecode ::
[INFO] [stderr]             lightning_decode(& mut d) ?, fee_proportional_millionths :
[INFO] [stderr]             lightning_encoding :: LightningDecode :: lightning_decode(& mut d)
[INFO] [stderr]             ?, htlc_maximum_msat : 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 : lightning_encoding
[INFO] [stderr]             :: LightningDecode :: lightning_decode(& mut d) ?,
[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 : lightning_encoding
[INFO] [stderr]             :: 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) ?, timestamp_range
[INFO] [stderr]             : 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]     Finished test [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lnp-6c5b183ee5599393)
[INFO] [stdout] 
[INFO] [stdout] running 21 tests
[INFO] [stdout] test channel::bolt::channel::test::bolt3_funding_witness_script ... ok
[INFO] [stdout] test channel::bolt::channel::test::bolt3_funding ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_channel_reserve_less_than_dust_limit ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_channel_reserve_too_large_abs ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_dust_limit_is_too_small ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_channel_reserve_too_large_percent ... ok
[INFO] [stdout] test channel::bolt::channel::test::bolt3_obscured_commitment_no ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_dust_limit_too_large ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_channel_funding_too_small ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_htlc_min_too_large ... ok
[INFO] [stdout] test channel::bolt::channel::test::bolt3_localkey_derivation ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_max_accepted_htlc_limit_exceeded ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_max_accepted_htlc_too_small ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_local_dust_limit_exeeds_remote_reserve ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_to_self_delay_too_large ... ok
[INFO] [stdout] test channel::bolt::channel::test::bolt3_commitment_tx ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_unreasonable_feerate_range_on_inbound ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_htlc_in_flight_max_too_small ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_unreasonable_min_depth ... ok
[INFO] [stdout] test channel::bolt::policy::test::test_remote_dust_limit_exceeds_local_reserve ... ok
[INFO] [stdout] test channel::bolt::channel::test::bolt3_revocationkey_derivation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests lnp
[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" "51b5401a176603e484af034dd640bb8bc6137267a4f4a485cbf296c7ed4de2e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51b5401a176603e484af034dd640bb8bc6137267a4f4a485cbf296c7ed4de2e1", kill_on_drop: false }`
[INFO] [stdout] 51b5401a176603e484af034dd640bb8bc6137267a4f4a485cbf296c7ed4de2e1
