From: github-actions Date: Mon, 30 Jan 2023 19:29:06 +0000 (+0000) Subject: Publish autogenerated nightly docs X-Git-Url: http://internal-gitweb-vhost/script/%22https:/database/scripts/static/enum.Commands.html?a=commitdiff_plain;h=0b0b3bdffce6512b2b802f7fa855e7ed2b12c53e;p=bitcoindevkit.org Publish autogenerated nightly docs --- diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html index d0befee2f5..ec834d3e9c 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html @@ -33,7 +33,7 @@
§

Bip158(Error)

Invalid BIP158 filter

§

Time(SystemTimeError)

Internal system time error

§

Global(Box<Error>)

Wrapper for crate::error::Error

-

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/index.html index e0212201d6..33ed7540f4 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/index.html @@ -1,5 +1,5 @@ bdk::blockchain::compact_filters - Rust
Available on crate feature compact_filters only.
Expand description

Compact Filters

+ logo

Module compact_filters

Available on crate feature compact_filters only.
Expand description

Compact Filters

This module contains a multithreaded implementation of an Blockchain backend that uses BIP157 (aka “Neutrino”) to populate the wallet’s database by downloading compact filters from the P2P network.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/esplora/enum.EsploraError.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/esplora/enum.EsploraError.html index 356854d2c4..b536ffc4c0 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/esplora/enum.EsploraError.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/esplora/enum.EsploraError.html @@ -23,7 +23,7 @@
§

TransactionNotFound(Txid)

Transaction not found

§

HeaderHeightNotFound(u32)

Header height not found

§

HeaderHashNotFound(BlockHash)

Header hash not found

-

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.log_progress.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.log_progress.html index 6cd316bcd5..c16cc8739c 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.log_progress.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.log_progress.html @@ -1,3 +1,3 @@ log_progress in bdk::blockchain - Rust

Function bdk::blockchain::log_progress

source ·
pub fn log_progress() -> LogProgress
Expand description

Create a new instance of LogProgress

+ logo

Function bdk::blockchain::log_progress

source ·
pub fn log_progress() -> LogProgress
Expand description

Create a new instance of LogProgress

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.noop_progress.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.noop_progress.html index 8cb31c5c20..ae7fad3d95 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.noop_progress.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.noop_progress.html @@ -1,3 +1,3 @@ noop_progress in bdk::blockchain - Rust

Function bdk::blockchain::noop_progress

source ·
pub fn noop_progress() -> NoopProgress
Expand description

Create a new instance of NoopProgress

+ logo

Function bdk::blockchain::noop_progress

source ·
pub fn noop_progress() -> NoopProgress
Expand description

Create a new instance of NoopProgress

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.progress.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.progress.html index de2a12acf6..ff7ce67246 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.progress.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/fn.progress.html @@ -1,3 +1,3 @@ progress in bdk::blockchain - Rust

Function bdk::blockchain::progress

source ·
pub fn progress() -> (Sender<ProgressData>, Receiver<ProgressData>)
Expand description

Shortcut to create a channel (pair of Sender and Receiver) that can transport ProgressData

+ logo

Function bdk::blockchain::progress

source ·
pub fn progress() -> (Sender<ProgressData>, Receiver<ProgressData>)
Expand description

Shortcut to create a channel (pair of Sender and Receiver) that can transport ProgressData

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/index.html index d837f2231f..1639cb92c4 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/index.html @@ -1,5 +1,5 @@ bdk::blockchain - Rust

Module bdk::blockchain

source ·
Expand description

Blockchain backends

+ logo

Module blockchain

Module bdk::blockchain

source ·
Expand description

Blockchain backends

This module provides the implementation of a few commonly-used backends like Electrum, Esplora and Compact Filters/Neutrino, along with a generalized trait diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/rpc/struct.RpcBlockchainFactory.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/rpc/struct.RpcBlockchainFactory.html index 21e0c03d23..6b12a58b39 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/rpc/struct.RpcBlockchainFactory.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/rpc/struct.RpcBlockchainFactory.html @@ -27,7 +27,7 @@ objects for different wallet names and with different rescan heights.

§wallet_name_prefix: Option<String>

The optional prefix used to build the full wallet name for blockchains

§default_skip_blocks: u32

Default number of blocks to skip which will be inherited by blockchain unless overridden

§sync_params: Option<RpcSyncParams>

Sync parameters

-

Trait Implementations§

The type returned when building a blockchain from this factory
Build a new blockchain for the given descriptor wallet_name Read more
Build a new blockchain for a given wallet Read more
Available on neither WebAssembly nor crate feature async-interface.
Use BlockchainFactory::build_for_wallet to get a blockchain, then sync the wallet Read more
Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+

Trait Implementations§

The type returned when building a blockchain from this factory
Build a new blockchain for the given descriptor wallet_name Read more
Build a new blockchain for a given wallet Read more
Available on non-crate feature async-interface only.
Use BlockchainFactory::build_for_wallet to get a blockchain, then sync the wallet Read more
Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.LogProgress.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.LogProgress.html index feac7d6dbe..997b7e3288 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.LogProgress.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.LogProgress.html @@ -1,6 +1,6 @@ LogProgress in bdk::blockchain - Rust

Struct bdk::blockchain::LogProgress

source ·
pub struct LogProgress;
Expand description

Type that implements Progress and logs at level INFO every update received

-

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Send a new progress update Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+ logo

LogProgress

Struct bdk::blockchain::LogProgress

source ·
pub struct LogProgress;
Expand description

Type that implements Progress and logs at level INFO every update received

+

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Send a new progress update Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.NoopProgress.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.NoopProgress.html index c91b21fefe..d342a9e7ce 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.NoopProgress.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/struct.NoopProgress.html @@ -1,6 +1,6 @@ NoopProgress in bdk::blockchain - Rust

Struct bdk::blockchain::NoopProgress

source ·
pub struct NoopProgress;
Expand description

Type that implements Progress and drops every update received

-

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Send a new progress update Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+ logo

NoopProgress

Struct bdk::blockchain::NoopProgress

source ·
pub struct NoopProgress;
Expand description

Type that implements Progress and drops every update received

+

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Send a new progress update Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Blockchain.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Blockchain.html index 1a7bcd41d2..5cc0c174e0 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Blockchain.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Blockchain.html @@ -7,4 +7,4 @@

Required Methods§

Return the set of Capability supported by this backend

Broadcast a transaction

Estimate the fee rate required to confirm a transaction in a given target of blocks

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.BlockchainFactory.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.BlockchainFactory.html index 695d6f8d8d..f635723cd7 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.BlockchainFactory.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.BlockchainFactory.html @@ -1,5 +1,5 @@ BlockchainFactory in bdk::blockchain - Rust
pub trait BlockchainFactory {
+                    logo

BlockchainFactory

pub trait BlockchainFactory {
     type Inner: Blockchain;
 
     fn build(
        &self,
        wallet_name: &str,
        override_skip_blocks: Option<u32>
    ) -> Result<Self::Inner, Error>; @@ -29,10 +29,10 @@ from the factory. Since it’s not possible to override the value to None<

Provided Methods§

Build a new blockchain for a given wallet

Internally uses wallet_name_from_descriptor to derive the name, and then calls BlockchainFactory::build to create the blockchain instance.

-
Available on neither WebAssembly nor crate feature async-interface.

Use BlockchainFactory::build_for_wallet to get a blockchain, then sync the wallet

+
Available on non-crate feature async-interface only.

Use BlockchainFactory::build_for_wallet to get a blockchain, then sync the wallet

This can be used when a new blockchain would only be used to sync a wallet and then immediately dropped. Keep in mind that specific blockchain factories may perform slow operations to build a blockchain for a given wallet, so if a wallet needs to be synced often it’s recommended to use BlockchainFactory::build_for_wallet to reuse the same blockchain multiple times.

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetBlockHash.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetBlockHash.html index 46e963bb90..46534717d5 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetBlockHash.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetBlockHash.html @@ -3,4 +3,4 @@ fn get_block_hash(&self, height: u64) -> Result<BlockHash, Error>; }
Expand description

Trait for getting block hash by block height

Required Methods§

fetch block hash given its height

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetHeight.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetHeight.html index 133a9acd12..bd109ade1b 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetHeight.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetHeight.html @@ -3,4 +3,4 @@ fn get_height(&self) -> Result<u32, Error>; }
Expand description

Trait for getting the current height of the blockchain.

Required Methods§

Return the current height

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetTx.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetTx.html index 25d42ca580..0670c0815c 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetTx.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.GetTx.html @@ -3,4 +3,4 @@ fn get_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>; }
Expand description

Trait for getting a transaction by txid

Required Methods§

Fetch a transaction given its txid

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Progress.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Progress.html index 36abfce930..29888cf2c7 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Progress.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.Progress.html @@ -1,9 +1,9 @@ Progress in bdk::blockchain - Rust

Trait bdk::blockchain::Progress

source ·
pub trait Progress: Send + 'static + Debug {
+                    logo

Progress

Trait bdk::blockchain::Progress

source ·
pub trait Progress: Send + 'static + Debug {
     fn update(&self, progress: f32, message: Option<String>) -> Result<(), Error>;
 }
Expand description

Trait for types that can receive and process progress updates during WalletSync::wallet_sync and WalletSync::wallet_setup

-

Required Methods§

Send a new progress update

+

Required Methods§

Send a new progress update

The progress value should be in the range 0.0 - 100.0, and the message value is an optional text message that can be displayed to the user.

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.WalletSync.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.WalletSync.html index 751978449e..c51af40484 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.WalletSync.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/trait.WalletSync.html @@ -21,4 +21,4 @@ in the blockchain to populate the database with BatchOperations::del_utxo.

The progress_update object can be used to give the caller updates about the progress by using Progress::update.

-

Implementations on Foreign Types§

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

Implementors§

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/type.ProgressData.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/type.ProgressData.html index 030a4cb804..fd377c48da 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/type.ProgressData.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/blockchain/type.ProgressData.html @@ -1,3 +1,3 @@ ProgressData in bdk::blockchain - Rust

Type Definition bdk::blockchain::ProgressData

source ·
pub type ProgressData = (f32, Option<String>);
Expand description

Data sent with a progress update over a channel

+ logo

ProgressData

Type Definition bdk::blockchain::ProgressData

source ·
pub type ProgressData = (f32, Option<String>);
Expand description

Data sent with a progress update over a channel

\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/enum.Descriptor.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/enum.Descriptor.html index 1cbad9dc5f..c68be59710 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/enum.Descriptor.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/enum.Descriptor.html @@ -132,9 +132,9 @@ default(0x02) y-coordinate.

assert_eq!(result.to_string(), "tr(03cc8a4bc64d897bddc5fbc2f670f7a8ba0b386779106cf1223c6fc5d7cd6fc115)#6qm9h8ym");
Errors

This function will return an error if hardened derivation is attempted.

-

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Deserialize this value from the given Serde deserializer. Read more
Formats the value using the given formatter. Read more
Extract the spending policy
Run a predicate on every key in the descriptor, returning whether +

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Deserialize this value from the given Serde deserializer. Read more
Formats the value using the given formatter. Read more
Extract the spending policy
Run a predicate on every key in the descriptor, returning whether the predicate returned true for every key Read more
Run a predicate on every key in the descriptor, returning whether -the predicate returned true for any key Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
The associated error which can be returned from parsing.
Parses a string s to return a value of this type. Read more

Parse an expression tree into a descriptor.

+the predicate returned true for any key Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
The associated error which can be returned from parsing.
Parses a string s to return a value of this type. Read more

Parse an expression tree into a descriptor.

Feeds this value into the given Hasher. Read more
Feeds a slice of this type into the given Hasher. Read more
Convert the object into an abstract policy
This method returns an Ordering between self and other. Read more
Compares and returns the maximum of two values. Read more
Compares and returns the minimum of two values. Read more
Restrict a value to a certain interval. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
This method returns an ordering between self and other values if one exists. Read more
This method tests less than (for self and other) and is used by the < operator. Read more
This method tests less than or equal to (for self and other) and is used by the <= diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/enum.Error.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/enum.Error.html index 81f36e7b76..2d2917e9d1 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/enum.Error.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/enum.Error.html @@ -23,7 +23,7 @@
§

Pk(Error)

Key-related error

§

Miniscript(Error)

Miniscript error

§

Hex(Error)

Hex decoding error

-

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/index.html index d82b924e1f..e94714d4e3 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/error/index.html @@ -1,3 +1,3 @@ bdk::descriptor::error - Rust

Module bdk::descriptor::error

source ·
Expand description

Descriptor errors

+ logo

Module error

Module bdk::descriptor::error

source ·
Expand description

Descriptor errors

Enums

Errors related to the parsing and usage of descriptors
\ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.BuildSatisfaction.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.BuildSatisfaction.html index 40304bebc7..327d17f210 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.BuildSatisfaction.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.BuildSatisfaction.html @@ -1,5 +1,5 @@ BuildSatisfaction in bdk::descriptor::policy - Rust
pub enum BuildSatisfaction<'a> {
+                    logo

BuildSatisfaction

pub enum BuildSatisfaction<'a> {
     None,
     Psbt(&'a Psbt),
     PsbtTimelocks {
@@ -15,7 +15,7 @@
 
§input_max_height: u32

The highest confirmation height between the inputs CSV should consider different inputs, but we consider the worst condition for the tx as whole

Like Psbt variant and also check for expired timelocks

-

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

+

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.PolicyError.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.PolicyError.html index 90e3b7f196..5276fe6dd2 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.PolicyError.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.PolicyError.html @@ -13,7 +13,7 @@
§

AddOnPartialComplete

Can not add to an item that is Satisfaction::PartialComplete

§

MixedTimelockUnits

Can not merge CSV or timelock values unless both are less than or both are equal or greater than 500_000_000

§

IncompatibleConditions

Incompatible conditions (not currently used)

-

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used +

Trait Implementations§

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.SatisfiableItem.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.SatisfiableItem.html index a97aa94165..10d505a0d1 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.SatisfiableItem.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/enum.SatisfiableItem.html @@ -51,7 +51,7 @@

Threshold items with threshold count

Implementations§

Returns whether the SatisfiableItem is a leaf item

Returns a unique id for the SatisfiableItem

-

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used +

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/index.html index f85ebcf87f..e3b80b58de 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/index.html @@ -1,5 +1,5 @@ bdk::descriptor::policy - Rust

Module bdk::descriptor::policy

source ·
Expand description

Descriptor policy

+ logo

Module policy

Module bdk::descriptor::policy

source ·
Expand description

Descriptor policy

This module implements the logic to extract and represent the spending policies of a descriptor in a more human-readable format.

This is an EXPERIMENTAL feature, API and other major changes are expected.

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/struct.Policy.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/struct.Policy.html index f0edd62855..f60c60833f 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/struct.Policy.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/policy/struct.Policy.html @@ -9,14 +9,14 @@
§item: SatisfiableItem

Type of this policy node

§satisfaction: Satisfaction

How much a given PSBT already satisfies this policy node in terms of signatures

§contribution: Satisfaction

How the wallet’s descriptor can satisfy this policy node

-

Implementations§

Return whether or not a specific path in the policy tree is required to unambiguously +

Implementations§

Return whether or not a specific path in the policy tree is required to unambiguously create a transaction

What this means is that for some spending policies the user should select which paths in the tree it intends to satisfy while signing, because the transaction must be created differently based on that.

-

Return the conditions that are set by the spending policy for a given path in the +

Return the conditions that are set by the spending policy for a given path in the policy tree

-

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used +

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/struct.Miniscript.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/struct.Miniscript.html index 13901a68bd..e4ad13a4b2 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/struct.Miniscript.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/struct.Miniscript.html @@ -130,7 +130,7 @@ This can occur if the miniscript contains a

  • Timelock combination
  • Contains a spend that exceeds resource limits
  • -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Deserialize this value from the given Serde deserializer. Read more
    Formats the value using the given formatter. Read more
    Extract the spending policy
    Run a predicate on every key in the descriptor, returning whether +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Deserialize this value from the given Serde deserializer. Read more
    Formats the value using the given formatter. Read more
    Extract the spending policy
    Run a predicate on every key in the descriptor, returning whether the predicate returned true for every key Read more
    Run a predicate on every key in the descriptor, returning whether the predicate returned true for any key Read more

    Parse a Miniscript from string and perform sanity checks See Miniscript::from_str_insane to parse scripts from string that diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/trait.ExtractPolicy.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/trait.ExtractPolicy.html index 5f876566d1..ec97aef363 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/trait.ExtractPolicy.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/descriptor/trait.ExtractPolicy.html @@ -3,4 +3,4 @@ fn extract_policy(
            &self,
            signers: &SignersContainer,
            psbt: BuildSatisfaction<'_>,
            secp: &Secp256k1<All>
        ) -> Result<Option<Policy>, DescriptorError>; }

    Expand description

    Trait implemented on Descriptors to add a method to extract the spending policy

    Required Methods§

    Extract the spending policy

    -

    Implementors§

    \ No newline at end of file +

    Implementors§

    \ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/enum.Error.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/enum.Error.html index bb0121368e..f9ba659e76 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/enum.Error.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/enum.Error.html @@ -97,7 +97,7 @@ explicit origin provided

    §

    Miniscript(Error)

    Miniscript error

    §

    MiniscriptPsbt(MiniscriptPsbtError)

    Miniscript PSBT error

    §

    Bip32(Error)

    BIP32 error

    -
    §

    Secp256k1(Error)

    An ECDSA error

    +
    §

    Secp256k1(Error)

    A secp256k1 error

    §

    Json(Error)

    Error serializing or deserializing JSON data

    §

    Hex(Error)

    Hex decoding error

    §

    Psbt(Error)

    Partially signed bitcoin transaction error

    @@ -110,7 +110,7 @@ are needed to satisfy stop_gap.

    §

    Sled(Error)

    Sled database error

    §

    Rpc(Error)

    Rpc client error

    §

    Rusqlite(Error)

    Rusqlite client error

    -

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/enum.KeyError.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/enum.KeyError.html index 56f3158022..1d09148fb7 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/enum.KeyError.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/enum.KeyError.html @@ -13,7 +13,7 @@
    §

    Message(String)

    Custom error message

    §

    Bip32(Error)

    BIP32 error

    §

    Miniscript(Error)

    Miniscript error

    -

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/index.html index 548e2b1192..8ad57dba0c 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/keys/index.html @@ -1,5 +1,5 @@ bdk::keys - Rust

    Module bdk::keys

    source ·
    Expand description

    Key formats

    + logo

    Module keys

    Module bdk::keys

    source ·
    Expand description

    Key formats

    Modules

    bip39keys-bip39
    BIP-0039

    Structs

    Output of a GeneratableKey key generation
    Options for generating a [PrivateKey]
    A descriptor [bitcoin::PrivateKey] with optional origin information.
    A descriptor SinglePubKey with optional origin information.
    Contents of a “sortedmulti” descriptor

    Enums

    Container for public or secret keys
    The descriptor pubkey, either a single pubkey or an xpub.
    The descriptor secret key, either a single private key or an xprv.
    Enum for extended keys that can be either xprv or xpub
    Errors thrown while working with keys
    Enum representation of the known valid ScriptContexts
    Single public key without any origin or range information.

    Traits

    Trait for keys that can be derived.
    Trait that adds extra useful methods to ScriptContexts
    Trait that allows generating a key with the default options
    Trait for keys that can be generated
    Trait for objects that can be turned into a public or secret DescriptorKey
    The ScriptContext for Miniscript. Additional type information associated with miniscript that is used for carrying out checks that dependent on the context under which the script is used. diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/hardwaresigner/struct.HWISigner.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/hardwaresigner/struct.HWISigner.html index 1ad7420448..6419904e66 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/hardwaresigner/struct.HWISigner.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/hardwaresigner/struct.HWISigner.html @@ -2,7 +2,7 @@ logo

    HWISigner

    pub struct HWISigner { /* private fields */ }
    Available on crate feature hardware-signer only.
    Expand description

    Custom signer for Hardware Wallets

    This ignores sign_options and leaves the decisions up to the hardware wallet.

    Implementations§

    Create a instance from the specified device and chain

    -

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Return the SignerId for this signer Read more
    Return the secret key for the signer Read more

    This implementation ignores sign_options

    +

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Return the SignerId for this signer Read more
    Return the secret key for the signer Read more

    This implementation ignores sign_options

    Sign all the inputs of the psbt

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerContext.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerContext.html index ccfc74711d..a7e0878f6f 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerContext.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerContext.html @@ -1,5 +1,5 @@ SignerContext in bdk::wallet::signer - Rust

    pub enum SignerContext {
    +                    logo

    SignerContext

    pub enum SignerContext {
         Legacy,
         Segwitv0,
         Tap {
    @@ -11,9 +11,9 @@
     
    §

    Segwitv0

    Segwit v0 context (BIP 143)

    §

    Tap

    Fields

    §is_internal_key: bool

    Whether the signer can sign for the internal key or not

    Taproot context (BIP 340)

    -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    This method tests for self and other values to be equal, and is used by ==. Read more
    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +sufficient, and should not be overridden without very good reason. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerError.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerError.html index 188eef18eb..098d629451 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerError.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.SignerError.html @@ -30,7 +30,7 @@ explicitly allowed them

    §

    InvalidSighash

    Invalid SIGHASH for the signing context in use

    §

    SighashError(Error)

    Error while computing the hash to sign

    §

    HWIError(Error)

    Error while signing using hardware wallets

    -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.
    This method tests for self and other values to be equal, and is used by ==. Read more
    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.TapLeavesOptions.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.TapLeavesOptions.html index 35c51f7b4c..d62ece1193 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.TapLeavesOptions.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/enum.TapLeavesOptions.html @@ -1,5 +1,5 @@ TapLeavesOptions in bdk::wallet::signer - Rust
    pub enum TapLeavesOptions {
    +                    logo

    TapLeavesOptions

    pub enum TapLeavesOptions {
         All,
         Include(Vec<TapLeafHash>),
         Exclude(Vec<TapLeafHash>),
    @@ -10,9 +10,9 @@
     some of the specified leaves, if it doesn’t have the right key to sign them.

    §

    Exclude(Vec<TapLeafHash>)

    The signer won’t sign the specified leaves.

    §

    None

    The signer won’t sign any leaf.

    -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more
    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more
    This method tests for self and other values to be equal, and is used by ==. Read more
    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +sufficient, and should not be overridden without very good reason. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html index fcaca98b20..3a1eeb8fec 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html @@ -1,5 +1,5 @@ bdk::wallet::signer - Rust

    Module bdk::wallet::signer

    source ·
    Expand description

    Generalized signers

    + logo

    Module signer

    Module bdk::wallet::signer

    source ·
    Expand description

    Generalized signers

    This module provides the ability to add customized signers to a Wallet through the Wallet::add_signer function.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignOptions.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignOptions.html index c335ce413e..af7effc2bb 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignOptions.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignOptions.html @@ -1,5 +1,5 @@ SignOptions in bdk::wallet::signer - Rust

    Struct bdk::wallet::signer::SignOptions

    source ·
    pub struct SignOptions {
    +                    logo

    SignOptions

    Struct bdk::wallet::signer::SignOptions

    source ·
    pub struct SignOptions {
         pub trust_witness_utxo: bool,
         pub assume_height: Option<u32>,
         pub allow_all_sighashes: bool,
    @@ -40,7 +40,7 @@ or not. This option is ignored if we’re signing a non-taproot PSBT.

    §allow_grinding: bool

    Whether we should grind ECDSA signature to ensure signing with low r or not. Defaults to true, i.e., we always grind ECDSA signature to sign with low r.

    -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerOrdering.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerOrdering.html index b9976db064..227ae1c8a5 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerOrdering.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerOrdering.html @@ -1,13 +1,13 @@ SignerOrdering in bdk::wallet::signer - Rust

    Struct bdk::wallet::signer::SignerOrdering

    source ·
    pub struct SignerOrdering(pub usize);
    Expand description

    Defines the order in which signers are called

    + logo

    SignerOrdering

    Struct bdk::wallet::signer::SignerOrdering

    source ·
    pub struct SignerOrdering(pub usize);
    Expand description

    Defines the order in which signers are called

    The default value is 100. Signers with an ordering above that will be called later, and they will thus see the partial signatures added to the transaction once they get to sign themselves.

    -

    Tuple Fields§

    §0: usize

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more
    This method returns an Ordering between self and other. Read more
    Compares and returns the maximum of two values. Read more
    Compares and returns the minimum of two values. Read more
    Restrict a value to a certain interval. Read more
    This method tests for self and other values to be equal, and is used +

    Tuple Fields§

    §0: usize

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more
    This method returns an Ordering between self and other. Read more
    Compares and returns the maximum of two values. Read more
    Compares and returns the minimum of two values. Read more
    Restrict a value to a certain interval. Read more
    This method tests for self and other values to be equal, and is used by ==. Read more
    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason. Read more
    This method returns an ordering between self and other values if one exists. Read more
    This method tests less than (for self and other) and is used by the < operator. Read more
    This method tests less than or equal to (for self and other) and is used by the <= +sufficient, and should not be overridden without very good reason. Read more
    This method returns an ordering between self and other values if one exists. Read more
    This method tests less than (for self and other) and is used by the < operator. Read more
    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    This method tests greater than (for self and other) and is used by the > operator. Read more
    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +operator. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerWrapper.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerWrapper.html index 63a62b3244..d3d122af59 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerWrapper.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignerWrapper.html @@ -1,8 +1,8 @@ SignerWrapper in bdk::wallet::signer - Rust

    Struct bdk::wallet::signer::SignerWrapper

    source ·
    pub struct SignerWrapper<S: Sized + Debug + Clone> { /* private fields */ }
    Expand description

    Wrapper structure to pair a signer with its context

    -

    Implementations§

    Create a wrapped signer from a signer and a context

    -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    The resulting type after dereferencing.
    Dereferences the value.
    Sign a single psbt input
    Sign a single psbt input
    Return the SignerId for this signer Read more
    Return the secret key for the signer Read more
    Return the SignerId for this signer Read more
    Return the secret key for the signer Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    + logo

    SignerWrapper

    Struct bdk::wallet::signer::SignerWrapper

    source ·
    pub struct SignerWrapper<S: Sized + Debug + Clone> { /* private fields */ }
    Expand description

    Wrapper structure to pair a signer with its context

    +

    Implementations§

    Create a wrapped signer from a signer and a context

    +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    The resulting type after dereferencing.
    Dereferences the value.
    Sign a single psbt input
    Sign a single psbt input
    Return the SignerId for this signer Read more
    Return the secret key for the signer Read more
    Return the SignerId for this signer Read more
    Return the secret key for the signer Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    -
    The alignment of pointer.
    The type for initializers.
    Initializes a with the given initializer. Read more
    Dereferences the given pointer. Read more
    Mutably dereferences the given pointer. Read more
    Drops the object pointed to by the given pointer. Read more
    The resulting type after obtaining ownership.
    Creates owned data from borrowed data, usually by cloning. Read more
    Uses borrowed data to replace owned data, usually by cloning. Read more
    Sign all the inputs of the psbt
    The type returned in the event of a conversion error.
    Performs the conversion.
    The type returned in the event of a conversion error.
    Performs the conversion.
    \ No newline at end of file +
    The alignment of pointer.
    The type for initializers.
    Initializes a with the given initializer. Read more
    Dereferences the given pointer. Read more
    Mutably dereferences the given pointer. Read more
    Drops the object pointed to by the given pointer. Read more
    The resulting type after obtaining ownership.
    Creates owned data from borrowed data, usually by cloning. Read more
    Uses borrowed data to replace owned data, usually by cloning. Read more
    Sign all the inputs of the psbt
    The type returned in the event of a conversion error.
    Performs the conversion.
    The type returned in the event of a conversion error.
    Performs the conversion.
    \ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignersContainer.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignersContainer.html index 0993d48292..1843d88fda 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignersContainer.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/struct.SignersContainer.html @@ -1,17 +1,17 @@ SignersContainer in bdk::wallet::signer - Rust
    pub struct SignersContainer(_);
    Expand description

    Container for multiple signers

    -

    Implementations§

    Create a map of public keys to secret keys

    -

    Build a new signer container from a KeyMap

    + logo

    SignersContainer

    pub struct SignersContainer(_);
    Expand description

    Container for multiple signers

    +

    Implementations§

    Create a map of public keys to secret keys

    +

    Build a new signer container from a KeyMap

    Also looks at the corresponding descriptor to determine the SignerContext to attach to the signers

    -

    Default constructor

    -

    Adds an external signer to the container for the specified id. Optionally returns the +

    Default constructor

    +

    Adds an external signer to the container for the specified id. Optionally returns the signer that was previously in the container, if any

    -

    Removes a signer from the container and returns it

    -

    Returns the list of identifiers of all the signers in the container

    -

    Returns the list of signers in the container, sorted by lowest to highest ordering

    -

    Finds the signer with lowest ordering for a given id in the container.

    -

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +

    Removes a signer from the container and returns it

    +

    Returns the list of identifiers of all the signers in the container

    +

    Returns the list of signers in the container, sorted by lowest to highest ordering

    +

    Finds the signer with lowest ordering for a given id in the container.

    +

    Trait Implementations§

    Returns a copy of the value. Read more
    Performs copy-assignment from source. Read more
    Formats the value using the given formatter. Read more
    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.InputSigner.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.InputSigner.html index 0b108277a2..f94ca0e008 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.InputSigner.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.InputSigner.html @@ -1,9 +1,9 @@ InputSigner in bdk::wallet::signer - Rust

    Trait bdk::wallet::signer::InputSigner

    source ·
    pub trait InputSigner: SignerCommon {
    +                    logo

    InputSigner

    Trait bdk::wallet::signer::InputSigner

    source ·
    pub trait InputSigner: SignerCommon {
         fn sign_input(
            &self,
            psbt: &mut PartiallySignedTransaction,
            input_index: usize,
            sign_options: &SignOptions,
            secp: &Secp256k1<All>
        ) -> Result<(), SignerError>; }
    Expand description

    PSBT Input signer

    This trait can be implemented to provide custom signers to the wallet. If the signer supports signing individual inputs, this trait should be implemented and BDK will provide automatically an implementation for TransactionSigner.

    -

    Required Methods§

    Sign a single psbt input

    -

    Implementors§

    \ No newline at end of file +

    Required Methods§

    Sign a single psbt input

    +

    Implementors§

    \ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.SignerCommon.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.SignerCommon.html index 3bc06076da..be86517f7f 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.SignerCommon.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.SignerCommon.html @@ -1,14 +1,14 @@ SignerCommon in bdk::wallet::signer - Rust

    Trait bdk::wallet::signer::SignerCommon

    source ·
    pub trait SignerCommon: Debug + Send + Sync {
    +                    logo

    SignerCommon

    Trait bdk::wallet::signer::SignerCommon

    source ·
    pub trait SignerCommon: Debug + Send + Sync {
         fn id(&self, secp: &Secp256k1<All>) -> SignerId;
     
         fn descriptor_secret_key(&self) -> Option<DescriptorSecretKey> { ... }
     }
    Expand description

    Common signer methods

    -

    Required Methods§

    Return the SignerId for this signer

    +

    Required Methods§

    Return the SignerId for this signer

    The SignerId can be used to lookup a signer in the Wallet’s signers map or to compare two signers.

    -

    Provided Methods§

    Return the secret key for the signer

    +

    Provided Methods§

    Return the secret key for the signer

    This is used internally to reconstruct the original descriptor that may contain secrets. External signers that are meant to keep key isolated should just return None here (which is the default for this method, if not overridden).

    -

    Implementors§

    \ No newline at end of file +

    Implementors§

    \ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.TransactionSigner.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.TransactionSigner.html index 33795b1437..a290486650 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.TransactionSigner.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/signer/trait.TransactionSigner.html @@ -1,9 +1,9 @@ TransactionSigner in bdk::wallet::signer - Rust
    pub trait TransactionSigner: SignerCommon {
    +                    logo

    TransactionSigner

    pub trait TransactionSigner: SignerCommon {
         fn sign_transaction(
            &self,
            psbt: &mut PartiallySignedTransaction,
            sign_options: &SignOptions,
            secp: &Secp256k1<All>
        ) -> Result<(), SignerError>; }
    Expand description

    PSBT signer

    This trait can be implemented when the signer can’t sign inputs individually, but signs the whole transaction at once.

    -

    Required Methods§

    Sign all the inputs of the psbt

    +

    Required Methods§

    Sign all the inputs of the psbt

    Implementors§

    This implementation ignores sign_options

    -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/enum.VerifyError.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/enum.VerifyError.html index c8bfffd04e..eb4183000e 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/enum.VerifyError.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/enum.VerifyError.html @@ -10,7 +10,7 @@
    §

    Consensus(Error)

    Consensus error

    §

    Global(Box<Error>)

    Generic error

    It has to be wrapped in a Box since Error has a variant that contains this enum

    -

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    +

    Trait Implementations§

    Formats the value using the given formatter. Read more
    Formats the value using the given formatter. Read more
    The lower-level source of this error, if any. Read more
    👎Deprecated since 1.42.0: use the Display impl or to_string()
    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    Converts to this type from the input type.
    Converts to this type from the input type.
    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    Gets the TypeId of self. Read more
    Immutably borrows from an owned value. Read more
    Mutably borrows from an owned value. Read more

    Returns the argument unchanged.

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/index.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/index.html index 365a44a22c..59411028fd 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/index.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/bdk/wallet/verify/index.html @@ -1,3 +1,3 @@ bdk::wallet::verify - Rust

    Module bdk::wallet::verify

    source ·
    Available on crate feature verify only.
    Expand description

    Verify transactions against the consensus rules

    + logo

    Module verify

    Module bdk::wallet::verify

    source ·
    Available on crate feature verify only.
    Expand description

    Verify transactions against the consensus rules

    Enums

    Error during validation of a tx agains the consensus rules

    Functions

    Verify a transaction against the consensus rules
    \ No newline at end of file diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/search-index.js b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/search-index.js index 56ac6ab064..c1db4f363f 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/search-index.js +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/search-index.js @@ -1,5 +1,5 @@ var searchIndex = JSON.parse('{\ -"bdk":{"doc":"A modern, lightweight, descriptor-based wallet library …","t":[3,13,3,13,13,13,13,6,13,13,13,4,13,13,3,13,13,13,13,13,2,13,13,13,13,13,13,13,13,13,13,13,4,13,3,13,13,13,13,13,13,13,13,13,13,13,13,13,13,2,13,13,13,2,13,3,13,2,13,4,8,13,2,3,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,14,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,14,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,0,11,11,12,11,11,11,11,0,12,12,12,11,11,11,11,11,2,11,11,2,12,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,12,12,10,5,11,11,11,11,11,11,11,11,11,0,11,12,12,12,12,12,12,12,12,13,2,2,8,8,4,2,16,8,2,2,3,13,13,8,8,8,16,3,3,8,6,2,2,8,8,0,11,11,11,11,11,11,10,10,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,0,11,0,10,11,11,11,11,11,11,10,10,10,11,10,10,11,11,11,11,11,11,11,5,5,5,0,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,10,11,4,4,13,13,13,13,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,3,13,3,3,4,13,13,13,13,13,13,13,13,3,13,13,13,3,13,13,13,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,11,11,11,11,11,11,11,12,12,11,11,11,13,3,3,4,13,13,13,13,13,13,13,13,13,13,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,13,13,3,3,3,3,13,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,12,11,12,12,12,2,2,16,8,8,16,8,8,2,3,3,0,10,11,12,11,11,11,11,10,11,11,11,10,11,12,10,11,10,11,10,11,10,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,10,11,10,11,10,11,10,11,10,11,10,11,10,11,10,11,11,11,11,11,10,11,10,11,10,11,10,11,0,11,12,11,10,11,10,11,10,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,4,4,4,13,13,13,13,13,13,3,13,13,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,6,4,2,4,3,6,8,13,6,8,16,6,4,3,13,13,2,8,4,13,13,6,13,13,4,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,2,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,11,12,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,10,11,11,0,11,11,11,11,11,11,11,11,11,11,11,10,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,5,5,5,5,13,13,4,13,13,13,13,13,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,4,13,3,6,13,13,6,13,13,13,13,13,13,13,13,13,13,13,4,3,4,13,13,13,13,13,4,4,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,3,3,3,3,3,8,6,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,8,4,4,4,16,16,8,4,13,8,8,3,8,13,13,13,16,4,6,13,13,13,16,13,3,13,8,4,13,13,13,3,3,4,3,13,6,13,13,13,5,10,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,5,11,10,11,11,5,10,11,12,12,11,11,11,11,11,11,10,12,11,11,11,11,10,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,4,13,4,3,6,13,4,13,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,10,10,10,4,3,8,13,13,13,13,3,3,11,12,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,0,12,11,11,11,11,11,11,11,11,10,11,12,11,11,11,11,11,11,12,11,11,11,0,11,0,11,11,11,11,11,11,11,11,11,0,11,11,11,11,0,11,11,11,11,5,3,13,8,3,6,4,3,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,3,6,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,3,8,4,4,4,3,3,3,13,4,8,13,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,10,11,11,10,11,12,11,12,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,13,3,13,13,4,3,13,13,3,8,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11],"n":["Balance","Bip32","BlockTime","BnBNoExactMatch","BnBTotalTriesExceeded","ChecksumMismatch","CompactFilters","ConfirmationTime","Descriptor","Electrum","Encode","Error","Esplora","External","FeeRate","FeeRateTooLow","FeeRateUnavailable","FeeTooLow","Foreign","Generic","HdKeyPaths","Hex","InsufficientFunds","Internal","InvalidNetwork","InvalidOutpoint","InvalidPolicyPathError","InvalidProgressValue","InvalidU32Bytes","IrreplaceableTransaction","Json","Key","KeychainKind","Local","LocalUtxo","Miniscript","MiniscriptPsbt","MissingCachedScripts","MissingKeyOrigin","NoRecipients","NoUtxosSelected","OutputBelowDustLimit","ProgressUpdateError","Psbt","PsbtParse","Rpc","Rusqlite","ScriptDoesntHaveAddressForm","Secp256k1","SignOptions","Signer","Sled","SpendingPolicyRequired","SyncOptions","TransactionConfirmed","TransactionDetails","TransactionNotFound","TxBuilder","UnknownUtxo","Utxo","Vbytes","Verification","Wallet","WeightedUtxo","add","as_byte","as_ref","as_sat_per_vb","base32_len","blockchain","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_base32","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","confirmation_time","confirmed","database","default","default","default","default_min_relay_fee","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","descriptor","descriptor","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","fee","fee_vb","fee_wu","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fragment","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_btc_per_kvb","from_sat_per_kvb","from_sat_per_kwu","from_sat_per_vb","from_vb","from_wu","get_hash","get_hash","get_spendable","get_total","hash","hash","height","immature","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","is_spent","keychain","keys","new","outpoint","outpoint","partial_cmp","partial_cmp","partial_cmp","provide","psbt","received","satisfaction_weight","sent","serialize","serialize","serialize","serialize","serialize","signer","sub","sum","template","timestamp","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","transaction","trusted_pending","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","txid","txout","txout","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","untrusted_pending","utxo","vbytes","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wallet","write_base32","available","found","needed","requested","required","required","outpoint","psbt_input","AccurateFees","AnyBlockchain","AnyBlockchainConfig","Blockchain","BlockchainFactory","Capability","CompactFiltersBlockchain","Config","ConfigurableBlockchain","ElectrumBlockchain","ElectrumBlockchainConfig","EsploraBlockchain","FullHistory","GetAnyTx","GetBlockHash","GetHeight","GetTx","Inner","LogProgress","NoopProgress","Progress","ProgressData","RpcBlockchain","RpcConfig","StatelessBlockchain","WalletSync","any","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","broadcast","build","build_for_wallet","clone","clone","clone","clone_into","clone_into","clone_into","compact_filters","default","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","electrum","eq","esplora","estimate_fee","fmt","fmt","fmt","from","from","from","from_config","get_block_hash","get_capabilities","get_hash","get_height","get_tx","hash","init","init","init","into","into","into","log_progress","noop_progress","progress","rpc","sync_wallet","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update","update","update","vzip","vzip","vzip","wallet_setup","wallet_sync","AnyBlockchain","AnyBlockchainConfig","CompactFilters","CompactFilters","Electrum","Electrum","Esplora","Esplora","Rpc","Rpc","borrow","borrow","borrow_mut","borrow_mut","broadcast","clone","clone_into","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","eq","estimate_fee","fmt","from","from","from","from","from","from","from","from","from","from","from_config","get_block_hash","get_capabilities","get_height","get_tx","init","init","into","into","serialize","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","wallet_setup","wallet_sync","Bip158","BitcoinPeerConfig","BlockHashNotFound","CompactFiltersBlockchain","CompactFiltersBlockchainConfig","CompactFiltersError","DataCorruption","Db","Global","InvalidFilter","InvalidFilterHeader","InvalidHeaders","InvalidResponse","Io","Mempool","MissingBlock","NoPeers","NotConnected","Peer","PeerBloomDisabled","Time","Timeout","add_tx","address","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broadcast","clone","clone","clone_into","clone_into","connect","connect_proxy","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","drop","drop","drop","drop","drop","drop","eq","eq","estimate_fee","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from_config","get_block_hash","get_capabilities","get_height","get_mempool","get_network","get_tx","get_tx","get_version","has_tx","init","init","init","init","init","init","into","into","into","into","into","into","is_connected","iter_txs","network","new","new","peers","provide","recv","send","serialize","serialize","skip_blocks","socks5","socks5_credentials","storage_dir","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","wallet_setup","ElectrumBlockchain","ElectrumBlockchainConfig","borrow","borrow","borrow_mut","borrow_mut","broadcast","clone","clone_into","deref","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","eq","estimate_fee","fmt","from","from","from","from_config","get_block_hash","get_capabilities","get_height","get_tx","init","init","into","into","retry","serialize","socks5","stop_gap","timeout","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","url","validate_domain","vzip","vzip","wallet_setup","BitcoinEncoding","EsploraBlockchain","EsploraBlockchainConfig","EsploraError","HeaderHashNotFound","HeaderHeightNotFound","Hex","HttpResponse","Io","NoHeader","Parsing","TransactionNotFound","Ureq","UreqTransport","base_url","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","broadcast","clone","clone_into","concurrency","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","eq","estimate_fee","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_client","from_config","get_block_hash","get_capabilities","get_height","get_tx","init","init","init","into","into","into","new","new","provide","proxy","serialize","stop_gap","timeout","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","wallet_setup","with_concurrency","Auth","Cookie","None","RpcBlockchain","RpcBlockchainFactory","RpcConfig","RpcSyncParams","UserPass","auth","auth","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broadcast","build","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","default","default_skip_blocks","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","eq","eq","estimate_fee","fmt","fmt","fmt","fmt","fmt","force_start_time","from","from","from","from","from","from_config","get_block_hash","get_capabilities","get_hash","get_height","get_tx","hash","init","init","init","init","init","into","into","into","into","into","network","network","partial_cmp","poll_rate_sec","serialize","serialize","serialize","start_script_count","start_time","sync_params","sync_params","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","url","url","vzip","vzip","vzip","vzip","vzip","wallet_name","wallet_name_prefix","wallet_setup","file","password","username","AnyDatabase","AnyDatabaseConfig","Batch","BatchDatabase","BatchOperations","Config","ConfigurableDatabase","Database","MemoryDatabase","SqliteDatabase","SyncTime","any","begin_batch","begin_batch","block_time","borrow","borrow","borrow_mut","borrow_mut","check_descriptor_checksum","check_descriptor_checksum","clone","clone_into","commit_batch","commit_batch","connection","del_last_index","del_last_index","del_path_from_script_pubkey","del_path_from_script_pubkey","del_raw_tx","del_raw_tx","del_script_pubkey_from_path","del_script_pubkey_from_path","del_sync_time","del_sync_time","del_tx","del_tx","del_utxo","del_utxo","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","fmt","fmt","from","from","from_config","from_config","get_last_index","get_last_index","get_path_from_script_pubkey","get_path_from_script_pubkey","get_raw_tx","get_raw_tx","get_script_pubkey_from_path","get_script_pubkey_from_path","get_sync_time","get_sync_time","get_tx","get_tx","get_utxo","get_utxo","increment_last_index","increment_last_index","init","init","into","into","iter_raw_txs","iter_raw_txs","iter_script_pubkeys","iter_script_pubkeys","iter_txs","iter_txs","iter_utxos","iter_utxos","memory","new","path","serialize","set_last_index","set_last_index","set_raw_tx","set_raw_tx","set_script_pubkey","set_script_pubkey","set_sync_time","set_sync_time","set_tx","set_tx","set_utxo","set_utxo","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","AnyBatch","AnyDatabase","AnyDatabaseConfig","Memory","Memory","Memory","Sled","Sled","Sled","SledDbConfiguration","Sqlite","Sqlite","Sqlite","SqliteDbConfiguration","begin_batch","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_descriptor_checksum","commit_batch","del_last_index","del_last_index","del_path_from_script_pubkey","del_path_from_script_pubkey","del_raw_tx","del_raw_tx","del_script_pubkey_from_path","del_script_pubkey_from_path","del_sync_time","del_sync_time","del_tx","del_tx","del_utxo","del_utxo","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_config","get_last_index","get_path_from_script_pubkey","get_raw_tx","get_script_pubkey_from_path","get_sync_time","get_tx","get_utxo","increment_last_index","init","init","init","init","init","into","into","into","into","into","iter_raw_txs","iter_script_pubkeys","iter_txs","iter_utxos","path","path","serialize","serialize","serialize","set_last_index","set_last_index","set_raw_tx","set_raw_tx","set_script_pubkey","set_script_pubkey","set_sync_time","set_sync_time","set_tx","set_tx","set_utxo","set_utxo","tree_name","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","MemoryDatabase","begin_batch","borrow","borrow_mut","check_descriptor_checksum","commit_batch","default","del_last_index","del_path_from_script_pubkey","del_raw_tx","del_script_pubkey_from_path","del_sync_time","del_tx","del_utxo","deref","deref_mut","drop","fmt","from","from_config","get_last_index","get_path_from_script_pubkey","get_raw_tx","get_script_pubkey_from_path","get_sync_time","get_tx","get_utxo","increment_last_index","init","into","iter_raw_txs","iter_script_pubkeys","iter_txs","iter_utxos","new","set_last_index","set_raw_tx","set_script_pubkey","set_sync_time","set_tx","set_utxo","try_from","try_into","type_id","vzip","Bare","DerivedDescriptor","Descriptor","DescriptorError","DescriptorPublicKey","DescriptorXKey","ExtendedDescriptor","ExtractPolicy","Hardened","HdKeyPaths","IntoWalletDescriptor","Key","KeyMap","Legacy","Miniscript","None","Pkh","Policy","ScriptContext","Segwitv0","Sh","Single","TapKeyOrigins","Tr","Unhardened","Wildcard","Wpkh","Wsh","XPub","address","as_enum","as_enum","as_inner","at_derivation_index","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","branches","calc_checksum","check_global_consensus_validity","check_global_consensus_validity","check_global_consensus_validity","check_global_policy_validity","check_global_policy_validity","check_global_validity","check_local_consensus_validity","check_local_consensus_validity","check_local_consensus_validity","check_local_policy_validity","check_local_policy_validity","check_local_policy_validity","check_local_validity","check_terminal_non_malleable","check_terminal_non_malleable","check_terminal_non_malleable","check_witness","check_witness","check_witness","checksum","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","contains_raw_pkh","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","derivation_path","derive","derived_descriptor","derived_descriptor","desc_type","deserialize","deserialize","drop","drop","drop","drop","drop","drop","encode","eq","eq","eq","eq","eq","eq","error","explicit_script","ext","ext_check","extract_policy","extract_policy","extract_policy","find_derivation_index_for_spk","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","for_each_key","for_each_key","from","from","from","from","from","from","from","from","from","from","from","from","from_ast","from_str","from_str","from_str_ext","from_str_insane","from_tree","from_tree","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_nth_child","get_nth_pk","get_satisfaction","get_satisfaction_mall","has_mixed_timelocks","has_repeated_keys","has_wildcard","hash","hash","hash","hash","hash","hash","init","init","init","init","init","init","into","into","into","into","into","into","into_inner","into_wallet_descriptor","into_wallet_descriptor","is_deriveable","is_non_malleable","iter","iter_pk","lift","lift","lift_check","matches","max_satisfaction_size","max_satisfaction_size","max_satisfaction_size","max_satisfaction_size","max_satisfaction_weight","max_satisfaction_witness_elements","name_str","name_str","name_str","new_bare","new_pk","new_pkh","new_sh","new_sh_sortedmulti","new_sh_with_wpkh","new_sh_with_wsh","new_sh_wpkh","new_sh_wsh","new_sh_wsh_sortedmulti","new_tr","new_wpkh","new_wsh","new_wsh_sortedmulti","node","origin","other_top_level_checks","parse","parse_descriptor","parse_insane","parse_with_ext","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pk_len","pk_len","pk_len","policy","requires_sig","sanity_check","sanity_check","satisfy","satisfy","satisfy_malleable","script_code","script_pubkey","script_size","serialize","serialize","sig_type","sig_type","sig_type","template","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string_with_secret","top_level_checks","top_level_type_check","translate_pk","translate_pk","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","ty","type_id","type_id","type_id","type_id","type_id","type_id","unsigned_script_sig","vzip","vzip","vzip","vzip","vzip","vzip","wildcard","within_resource_limits","xkey","calc_checksum","calc_checksum_bytes","get_checksum","get_checksum_bytes","Base58","Bip32","Error","HardenedDerivationXpub","Hex","InvalidDescriptorCharacter","InvalidDescriptorChecksum","InvalidHdKeyPath","Key","Miniscript","Pk","Policy","borrow","borrow_mut","deref","deref_mut","drop","fmt","fmt","from","from","from","from","from","from","from","from","init","into","provide","to_string","try_from","try_into","type_id","vzip","AbsoluteTimelock","AddOnLeaf","AddOnPartialComplete","BuildSatisfaction","Complete","Condition","ConditionMap","EcdsaSignature","Fingerprint","FoldedConditionMap","Hash160Preimage","Hash256Preimage","IncompatibleConditions","IndexOutOfRange","MixedTimelockUnits","Multisig","None","None","NotEnoughItemsSelected","Partial","PartialComplete","PkOrF","Policy","PolicyError","Psbt","PsbtTimelocks","Pubkey","RelativeTimelock","Ripemd160Preimage","Satisfaction","SatisfiableItem","SchnorrSignature","Sha256Preimage","Thresh","XOnlyPubkey","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","contribution","csv","default","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","get_condition","get_hash","get_hash","hash","hash","id","id","init","init","init","init","init","init","init","into","into","into","into","into","into","into","is_leaf","is_leaf","is_null","item","partial_cmp","provide","requires_path","satisfaction","serialize","serialize","serialize","serialize","serialize","timelock","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","current_height","input_max_height","psbt","condition","conditions","conditions","items","items","m","m","n","n","sorted","sorted","hash","hash","hash","hash","items","keys","threshold","threshold","value","value","Bip44","Bip44Public","Bip49","Bip49Public","Bip84","Bip84Public","DescriptorTemplate","DescriptorTemplateOut","P2Pkh","P2Wpkh","P2Wpkh_P2Sh","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build","build","build","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","drop","drop","drop","drop","from","from","from","from","from","from","from","from","from","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","Bip32","DerivableKey","DescriptorKey","DescriptorPublicKey","DescriptorSecretKey","Entropy","Error","ExtScriptContext","ExtendedKey","FullKey","GeneratableDefaultOptions","GeneratableKey","GeneratedKey","IntoDescriptorKey","InvalidChecksum","InvalidNetwork","InvalidScriptContext","Key","KeyError","KeyMap","Legacy","Message","Miniscript","Options","Private","PrivateKeyGenerateOptions","Public","ScriptContext","ScriptContextEnum","Segwitv0","Single","Single","SinglePriv","SinglePub","SinglePubKey","SortedMultiVec","Tap","ValidNetworks","XOnly","XPrv","XPub","any_network","as_enum","at_derivation_index","bip39","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_global_consensus_validity","check_global_policy_validity","check_global_validity","check_local_consensus_validity","check_local_policy_validity","check_local_validity","check_terminal_non_malleable","check_witness","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","compressed","default","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","derive","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","encode","eq","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","for_each_key","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_public","from_secret","from_str","from_str","from_tree","full_derivation_path","generate","generate_default","generate_with_entropy","generate_with_entropy_default","get_hash","get_hash","get_hash","get_hash","has_secret","has_wildcard","hash","hash","hash","hash","init","init","init","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","into","into","into","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_extended_key","into_extended_key","into_extended_key","into_key","into_xprv","into_xpub","is_deriveable","is_legacy","is_legacy","is_segwit_v0","is_segwit_v0","is_taproot","is_taproot","is_uncompressed","is_x_only_key","k","key","key","lift","mainnet_network","master_fingerprint","max_satisfaction_size","max_satisfaction_size","max_satisfaction_witness_elements","merge_networks","name_str","new","origin","origin","other_top_level_checks","override_valid_networks","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pk_len","pks","provide","sanity_check","satisfy","script_size","sig_type","sorted_node","test_networks","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_public","to_string","to_string","to_string","to_string","top_level_checks","top_level_type_check","translate_pk","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AmbiguousLanguages","BadEntropyBitCount","BadWordCount","English","Error","InvalidChecksum","Language","Mnemonic","MnemonicWithPassphrase","UnknownWord","WordCount","Words12","Words15","Words18","Words21","Words24","all","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","drop","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_entropy","from_entropy_in","from_str","generate_in_with","generate_with_entropy","get_hash","get_hash","hash","hash","init","init","init","init","into","into","into","into","into_descriptor_key","into_descriptor_key","into_extended_key","into_extended_key","language","language_of","parse","parse_in","parse_in_normalized","parse_normalized","partial_cmp","partial_cmp","provide","serialize","to_entropy","to_entropy_array","to_owned","to_owned","to_owned","to_seed","to_seed_normalized","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","word_count","word_iter","words_by_prefix","PsbtUtils","fee_amount","fee_rate","get_utxo_for","AddressIndex","AddressInfo","IsDust","LastUnused","New","Peek","Reset","SyncOptions","Wallet","add_signer","address","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_fee_bump","build_tx","coin_selection","database","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","descriptor_checksum","drop","drop","drop","drop","ensure_addresses_cached","eq","export","finalize_psbt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","get_address","get_balance","get_descriptor_for_keychain","get_funded_wallet","get_internal_address","get_psbt_input","get_signers","get_tx","get_utxo","hardwaresigner","index","init","init","init","init","into","into","into","into","is_dust","is_mine","keychain","list_transactions","list_unspent","network","new","new_offline","policies","progress","public_descriptor","secp_ctx","sign","signer","sync","time","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tx_builder","type_id","type_id","type_id","type_id","verify","vzip","vzip","vzip","vzip","wallet_name_from_descriptor","BranchAndBoundCoinSelection","Change","CoinSelectionAlgorithm","CoinSelectionResult","DefaultCoinSelectionAlgorithm","Excess","LargestFirstCoinSelection","NoChange","OldestFirstCoinSelection","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","coin_select","coin_select","coin_select","coin_select","decide_change","default","default","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","excess","fee_amount","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","init","init","init","init","init","into","into","into","into","into","local_selected_amount","new","selected","selected_amount","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","amount","change_fee","dust_threshold","fee","remaining_amount","FullyNodedExport","WalletExport","blockheight","borrow","borrow_mut","change_descriptor","deref","deref_mut","descriptor","deserialize","drop","export_wallet","fmt","from","from_str","init","into","label","serialize","to_string","try_from","try_into","type_id","vzip","HWISigner","borrow","borrow_mut","deref","deref_mut","drop","fmt","from","from_device","id","init","into","sign_transaction","try_from","try_into","type_id","vzip","All","Dummy","Exclude","Fingerprint","HWIError","Include","InputIndexOutOfRange","InputSigner","InvalidKey","InvalidNonWitnessUtxo","InvalidSighash","Legacy","MissingHdKeypath","MissingKey","MissingNonWitnessUtxo","MissingWitnessScript","MissingWitnessUtxo","NonStandardSighash","None","PkHash","Segwitv0","SighashError","SignOptions","SignerCommon","SignerContext","SignerError","SignerId","SignerOrdering","SignerWrapper","SignersContainer","Tap","TapLeavesOptions","TransactionSigner","UserCanceled","add_external","allow_all_sighashes","allow_grinding","as_key_map","assume_height","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","default","default","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","descriptor_secret_key","descriptor_secret_key","descriptor_secret_key","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","find","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","get_hash","hash","id","id","id","ids","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","new","new","partial_cmp","partial_cmp","provide","remove","remove_partial_sigs","sign_input","sign_input","sign_input","sign_transaction","sign_transaction","sign_with_tap_internal_key","signers","tap_leaves_options","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","trust_witness_utxo","try_finalize","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","is_internal_key","get_timestamp","Bip69Lexicographic","BumpFee","ChangeAllowed","ChangeForbidden","ChangeSpendPolicy","CreateTx","OnlyChange","Shuffle","TxBuilder","TxBuilderContext","TxOrdering","Untouched","add_data","add_foreign_utxo","add_global_xpubs","add_recipient","add_unspendable","add_utxo","add_utxos","allow_dust","allow_shrinking","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","change_policy","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","coin_selection","current_height","default","default","default","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","do_not_spend_change","drain_to","drain_wallet","drop","drop","drop","drop","drop","enable_rbf","enable_rbf_with_sequence","eq","eq","fee_absolute","fee_rate","finish","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_hash","get_hash","hash","hash","include_output_redeem_witness_script","init","init","init","init","init","into","into","into","into","into","manually_selected_only","nlocktime","only_spend_change","only_witness_utxo","ordering","partial_cmp","partial_cmp","policy_path","set_recipients","sighash","sort_tx","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unspendable","version","vzip","vzip","vzip","vzip","vzip","Consensus","Global","InvalidInput","MissingInputTx","VerifyError","borrow","borrow_mut","deref","deref_mut","drop","fmt","fmt","from","from","from","init","into","provide","to_string","try_from","try_into","type_id","verify_tx","vzip"],"q":["bdk","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::Error","","","","","","bdk::Utxo","","bdk::blockchain","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::any","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::compact_filters","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::electrum","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::esplora","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::rpc","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::rpc::Auth","","","bdk::database","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::database::any","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::database::memory","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor::checksum","","","","bdk::descriptor::error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor::policy","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor::policy::BuildSatisfaction","","","bdk::descriptor::policy::Satisfaction","","","","","","","","","","","bdk::descriptor::policy::SatisfiableItem","","","","","","","","","","bdk::descriptor::template","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::keys","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::keys::bip39","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::psbt","","","","bdk::wallet","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::coin_selection","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::coin_selection::Excess","","","","","bdk::wallet::export","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::hardwaresigner","","","","","","","","","","","","","","","","","bdk::wallet::signer","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::signer::SignerContext","bdk::wallet::time","bdk::wallet::tx_builder","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::verify","","","","","","","","","","","","","","","","","","","","","","",""],"d":["Balance differentiated in various categories","BIP32 error","Block height and timestamp of a block","Branch and bound coin selection tries to avoid needing a …","Branch and bound coin selection possible attempts with …","Descriptor checksum mismatch","Compact filters client error)","DEPRECATED: Confirmation time of a transaction","Error related to the parsing and usage of descriptors","Electrum client error","Encoding error","Errors that can be thrown by the Wallet","Esplora client error","External","Fee rate","When bumping a tx the fee rate requested is lower than …","Node doesn’t have data to estimate a fee rate","When bumping a tx the absolute fee requested is lower than …","A UTXO owned by another wallet.","Generic error","","Hex decoding error","Wallet’s UTXO set is not enough to cover recipient’s …","Internal, usually used for change outputs","Invalid network","Requested outpoint doesn’t exist in the tx (vout greater …","Error while extracting and manipulating policies","Progress value must be between 0.0 (included) and 100.0 …","Wrong number of bytes found when trying to convert to u32","Trying to replace a tx that has a sequence >= 0xFFFFFFFE","Error serializing or deserializing JSON data","Error while working with keys","Types of keychains","A UTXO owned by the local wallet.","An unspent output owned by a Wallet.","Miniscript error","Miniscript PSBT error","crate::blockchain::WalletSync sync attempt failed due to …","In order to use the TxBuilder::add_global_xpubs option …","Cannot build a tx without recipients","manually_selected_only option is selected but no utxo has …","Output created is under the dust limit, 546 satoshis","Progress update error (maybe the channel has been closed)","Partially signed bitcoin transaction error","Partially signed bitcoin transaction parse error","Rpc client error","Rusqlite client error","This error is thrown when trying to convert Bare and …","An ECDSA error","","Signing error","Sled database error","Spending policy is not compatible with this KeychainKind","","Happens when trying to bump a transaction that is already …","A wallet transaction","Thrown when a tx is not found in the internal database","","Happens when trying to spend an UTXO that is not in the …","An unspent transaction output (UTXO).","Trait implemented by types that can be used to measure …","Transaction verification error","","A Utxo with its satisfaction_weight.","","Return KeychainKind as a byte","","Return the value as satoshi/vbyte","","Blockchain backends","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If the transaction is confirmed, contains height and …","Confirmed and immediately spendable balance","Database types","","","","Create a new FeeRate with the default min relay fee value","","","","","","","","","","","","","","","","","","","Descriptors","Macro to write full descriptors with code","","","","","","","","","","","","","","","","","","","","","","","Fee value (sats) if confirmed. The availability of the fee …","Calculate absolute fee in Satoshis using size in virtual …","Calculate absolute fee in Satoshis using size in weight …","","","","","","","","","","","","Macro to write descriptor fragments with code","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Create a new instance of FeeRate given a float fee rate in …","Create a new instance of FeeRate given a float fee rate in …","Create a new instance of FeeRate given a float fee rate in …","Create a new instance of FeeRate given a float fee rate in …","Calculate fee rate from fee and vbytes.","Calculate fee rate from fee and weight units (wu).","","","Get sum of trusted_pending and confirmed coins","Get the whole balance visible to the wallet","","","confirmation block height","All coinbase outputs not yet matured","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Whether this UTXO is spent or not","Type of keychain","Key formats","Returns Some BlockTime if both height and timestamp are …","Get the location of the UTXO","Reference to a transaction output","","","","","Additional functions on the rust-bitcoin …","Received value (sats) Sum of owned outputs of this …","The weight of the witness data and scriptSig expressed in …","Sent value (sats) Sum of owned inputs of this transaction.","","","","","","","","","","confirmation block timestamp","","","","","","","","","","","Optional transaction","Unconfirmed UTXOs generated by a wallet tx","","","","","","","","","","","","","","","","","","","Transaction id","Get the TxOut of the UTXO","Transaction output","","","","","","","","","","Unconfirmed UTXOs received from an external wallet","The UTXO","Convert weight units to virtual bytes.","Get the version of BDK at runtime","","","","","","","","","","Wallet","","Sats available for spending","found network, for example the network of the bitcoin node","Sats needed for some transaction","requested network, for example what is given as bdk-cli …","Required fee rate (satoshi/vbyte)","Required fee absolute value (satoshi)","The location of the output.","The information about the input we require to add it to a …","Can compute accurate fees for the transactions found …","","","Trait that defines the actions that must be supported by a …","Trait for a factory of blockchains that share the …","Capabilities that can be supported by a Blockchain backend","","Type that contains the configuration","Trait for Blockchain types that can be created given a …","","","Structure that implements the logic to sync with Esplora","Can recover the full history of a wallet and not only the …","Can fetch any historical transaction given its txid","Trait for getting block hash by block height","Trait for getting the current height of the blockchain.","Trait for getting a transaction by txid","The type returned when building a blockchain from this …","Type that implements Progress and logs at level INFO every …","Type that implements Progress and drops every update …","Trait for types that can receive and process progress …","Data sent with a progress update over a channel","","","Trait for blockchains that don’t contain any state","Trait for blockchains that can sync by updating the …","Runtime-checked blockchain types","","","","","","","Broadcast a transaction","Build a new blockchain for the given descriptor wallet_name","Build a new blockchain for a given wallet","","","","","","","Compact Filters","","","","","","","","","","","","Electrum","","Esplora","Estimate the fee rate required to confirm a transaction in …","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Create a new instance given a configuration","fetch block hash given its height","Return the set of Capability supported by this backend","","Return the current height","Fetch a transaction given its txid","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Create a new instance of LogProgress","Create a new instance of NoopProgress","Shortcut to create a channel (pair of Sender and Receiver) …","Rpc Blockchain","Use BlockchainFactory::build_for_wallet to get a …","","","","","","","","","","","","","Send a new progress update","","","","","","Setup the backend and populate the internal database for …","If not overridden, it defaults to calling …","Type that can contain any of the Blockchain types defined …","Type that can contain any of the blockchain configurations …","Compact filters client","Compact filters client","Electrum client","Electrum client","Esplora client","Esplora client","RPC client","RPC client configuration","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","Invalid BIP158 filter","Data to connect to a Bitcoin P2P peer","Block hash at specified height not found","Structure implementing the required blockchain traits","Configuration for a CompactFiltersBlockchain","An error that can occur during sync with a …","The data stored in the block filters storage are corrupted","Internal database error","Wrapper for crate::error::Error","The compact filter returned is invalid","The compact filter headers returned are invalid","The headers returned are invalid","A peer sent an invalid or unexpected response","Internal I/O error","Container for unconfirmed, but valid Bitcoin transactions","The peer is missing a block in the valid chain","No peers have been specified","A peer is not connected","A Bitcoin peer","The peer doesn’t advertise the BLOOM service flag","Internal system time error","A peer took too long to reply to one of our messages","Add a transaction to the mempool","Peer address such as 127.0.0.1:18333","","","","","","","","","","","","","","","","","","Connect to a peer over a plaintext TCP connection","Connect to a peer through a SOCKS5 proxy, optionally by …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","Return the mempool used by this peer","Return the Bitcoin Network in use","Look-up a transaction in the mempool given an Inventory …","","Return the VersionMessage sent by the peer","Return whether or not the mempool contains a transaction …","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Return whether or not the peer is still connected","Return the list of transactions contained in the mempool","Network used","Create a new empty mempool","Construct a new instance given a list of peers, a path to …","List of peers to try to connect to for asking headers and …","","Waits for a specific incoming Bitcoin message, optionally …","Send a raw Bitcoin message to the peer","","","Optionally skip initial skip_blocks blocks (default: 0)","Optional socks5 proxy","Optional socks5 proxy credentials","Storage dir to save partially downloaded headers and full …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Wrapper over an Electrum Client that implements the …","Configuration for an ElectrumBlockchain","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","Request retry count","","URL of the socks5 proxy server or a Tor service","Stop searching addresses for transactions after finding an …","Request timeout (seconds)","","","","","","","","URL of the Electrum server (such as ElectrumX, Esplora, …","Validate the domain when using SSL","","","","Invalid Bitcoin data returned","Structure that implements the logic to sync with Esplora","Configuration for an EsploraBlockchain","Errors that can happen during a sync with Esplora","Header hash not found","Header height not found","Invalid Hex data returned","HTTP response error","IO error during ureq response read","No header found in ureq response","Invalid number returned","Transaction not found","Error during ureq HTTP request","Transport error during the ureq HTTP call","Base URL of the esplora service","","","","","","","","","","Number of parallel requests sent to the esplora service …","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Build a new instance given a client","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Create a new instance of the client from a base URL and …","create a config with default values given the base url and …","","Optional URL of the proxy to use to make requests to the …","","Stop searching addresses for transactions after finding an …","Socket timeout.","","","","","","","","","","","","","","","","Set the number of parallel requests the client can make.","This struct is equivalent to bitcoincore_rpc::Auth but it …","Authentication with a cookie file","None authentication","The main struct for RPC backend implementing the …","Factory of RpcBlockchain instances, implements …","RpcBlockchain configuration options","Sync parameters for Bitcoin Core RPC.","Authentication with username and password, usually …","The bitcoin node authentication mechanism","The bitcoin node authentication mechanism","","","","","","","","","","","","","","","","","","","","","","","Default number of blocks to skip which will be inherited …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Forces every sync to use start_time as import timestamp.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns RpcBlockchain backend creating an RPC client to a …","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","The network we are using (it will be checked the bitcoin …","The network we are using (it will be checked the bitcoin …","","RPC poll rate (in seconds) to get state updates.","","","","The minimum number of scripts to scan for on initial sync.","Time in unix seconds in which initial sync will start …","Sync parameters","Sync parameters","","","","","","","","","","","","","","","","","","","","The bitcoin node url","The bitcoin node url","","","","","","The wallet name in the bitcoin node, consider using …","The optional prefix used to build the full wallet name for …","","Cookie file","Password","Username","","","Container for the operations","Trait for a database that supports batch operations","Trait for operations that can be batched","Type that contains the configuration","Trait for Database types that can be created given a …","Trait for reading data from a database","","Sqlite database stored on filesystem","Blockchain state at the time of syncing","Runtime-checked database types","Create a new batch container","","Block timestamp and height at the time of sync","","","","","Read and checks the descriptor checksum for a given …","","","","Consume and apply a batch of operations","","A rusqlite connection object to the sqlite database","Delete the last derivation index for a keychain.","","Delete the data related to a specific script_pubkey, …","","Delete a raw transaction given its Txid","","Delete a script_pubkey given the keychain and its child …","","Reset the sync time to None","","Delete the metadata of a transaction and optionally the …","","Delete a LocalUtxo given its OutPoint","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Create a new instance given a configuration","","Return the last derivation index for a keychain.","","Fetch the keychain and child number of a given …","","Fetch a raw transaction given its Txid","","Fetch a script_pubkey given the child number of a keychain.","","Return the sync time, if present","","Fetch the transaction metadata and optionally also the raw …","","Fetch a LocalUtxo given its OutPoint","","Increment the last derivation index for a keychain and …","","","","Calls U::from(self).","Calls U::from(self).","Return the list of raw transactions","","Return the list of script_pubkeys","","Return the list of transactions metadata","","Return the list of LocalUtxos","","In-memory ephemeral database","Instantiate a new SqliteDatabase instance by creating a …","Path on the local filesystem to store the sqlite file","","Store the last derivation index for a given keychain.","","Store a raw transaction","","Store a script_pubkey along with its keychain and child …","","Store the sync time","","Store the metadata of a transaction","","Store a LocalUtxo","","","","","","","","","","","Type that contains any of the BatchDatabase::Batch types …","Type that can contain any of the Database types defined by …","Type that can contain any of the database configurations …","In-memory ephemeral database","In-memory ephemeral database","Memory database has no config","Simple key-value embedded database based on sled","Simple key-value embedded database based on sled","Simple key-value embedded database based on sled","Configuration type for a sled::Tree database","Sqlite embedded database using rusqlite","Sqlite embedded database using rusqlite","Sqlite embedded database using rusqlite","Configuration type for a sqlite::SqliteDatabase database","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","Main directory of the db","Main directory of the db","","","","","","","","","","","","","","","","Name of the database tree, a separated namespace for the …","","","","","","","","","","","","","","","","","","","","","In-memory ephemeral database","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","","","","","Create a new empty database","","","","","","","","","","","A raw scriptpubkey (including pay-to-pubkey) under Legacy …","Alias for a Descriptor that contains extended derived keys","Script descriptor","","The descriptor pubkey, either a single pubkey or an xpub.","An extended key with origin, derivation path, and wildcard.","Alias for a Descriptor that can contain extended keys …","Trait implemented on Descriptors to add a method to …","Unhardened wildcard, e.g. *h","Alias for the type of maps that represent derivation paths …","Trait for types which can be converted into an …","The consensus key associated with the type. Must be a …","Alias type for a map of public key to secret key","Legacy ScriptContext To be used as P2SH scripts For …","Top-level script AST type","No wildcard","Pay-to-PubKey-Hash","","The ScriptContext for Miniscript. Additional type …","Segwitv0 ScriptContext","Pay-to-ScriptHash(includes nested wsh/wpkh/sorted multi)","Single public key.","Alias for the type of maps that represent taproot key …","Pay-to-Taproot","Unhardened wildcard, e.g. *","Whether a descriptor has a wildcard in it","Pay-to-Witness-PubKey-Hash","Pay-to-Witness-ScriptHash with Segwitv0 context","Extended public key (xpub).","Computes the Bitcoin address of the descriptor, if one …","","","Get a reference to the inner AstElem representing the root …","Replaces all wildcards (i.e. /*) in the descriptor with a …","","","","","","","","","","","","","Enumerates all child nodes of the current AST node (self) …","","Depending on script Context, some of the Terminals might …","","","Depending on script Context, some of the script resource …","","Check the consensus + policy(if not disabled) rules that …","Consensus rules at the Miniscript satisfaction time. It is …","","","Policy rules at the Miniscript satisfaction time. It is …","","","Check the consensus + policy(if not disabled) rules …","Depending on ScriptContext, fragments can be malleable. …","","","Check whether the given satisfaction is valid under the …","","","Descriptor checksum","","","","","","","","","","","","","","","","","","","Whether the given miniscript contains a raw pkh fragment","","","","","","","","","","","","","The derivation path","Deprecated name for [at_derivation_index].","Convert all the public keys in the descriptor to …","Convert all the public keys in the descriptor to …","Get the DescriptorType of Descriptor","","","","","","","","","Encode as a Bitcoin script","","","","","","","Descriptor errors","Computes the the underlying script before any hashing is …","Additional information helpful for extra analysis.","Check whether the miniscript follows the given Extra …","Extract the spending policy","","","Utility method for deriving the descriptor at each index …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Add type information(Type and Extdata) to Miniscript based …","","Parse a Miniscript from string and perform sanity checks …","Attempt to parse an Miniscripts that don’t follow the …","Attempt to parse an insane(scripts don’t clear sanity …","Parse an expression tree into a descriptor.","Parse an expression tree into a Miniscript. As a general …","","","","","","","Returns child node with given index, if any","Returns Option::Some with cloned n’th public key from …","Returns satisfying non-malleable witness and scriptSig to …","Returns a possilbly mallable satisfying non-malleable …","Whether the miniscript contains a combination of timelocks","Whether the miniscript has repeated Pk or Pkh","Whether or not the descriptor has any wildcards i.e. /*.","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Extracts the AstElem representing the root of the …","Convert to wallet descriptor","","Whether or not the descriptor has any wildcards","Whether the miniscript is malleable","Creates a new Iter iterator that will iterate over all …","Creates a new PkIter iterator that will iterate over all …","","","Lifting corresponds conversion of miniscript into Policy […","Compares this key with a keysource and returns the …","Depending on script context, the size of a satifaction …","","","Maximum size, in bytes, of a satisfying witness. For …","Computes an upper bound on the weight of a satisfying …","Maximum number of witness elements used to satisfy the …","Local helper function to display error messages with …","","","Create a new bare descriptor from witness script Errors …","Create a new pk descriptor","Create a new PkH descriptor","Create a new sh for a given redeem script Errors when …","Create a new sh sortedmulti descriptor with threshold k …","Create a new sh wrapper for the given wpkh descriptor","Create a new sh wrapper for the given wsh descriptor","Create a new sh wrapped wpkh from Pk. Errors when …","Create a new sh wrapped wsh descriptor with witness script …","Create a new sh wrapped wsh sortedmulti descriptor from …","Create new tr descriptor Errors when miniscript exceeds …","Create a new Wpkh descriptor Will return Err if …","Create a new wsh descriptor from witness script Errors …","Create a new wsh sorted multi descriptor Errors when …","A node in the Abstract Syntax Tree(","Origin information","Other top level checks that are context specific","Attempt to parse a Script into Miniscript representation.","Parse a descriptor that may contain secret keys","Attempt to parse an insane(scripts don’t clear sanity …","Attempt to parse an miniscript with extra features that …","","","","","","","Get the len of public key when serialized based on context …","","","Descriptor policy","Whether all spend paths of miniscript require a signature","Checks whether the descriptor is safe.","Check whether the underlying Miniscript is safe under the …","Attempts to produce a non-malleable satisfying witness and …","Attempt to produce non-malleable satisfying witness for the","Attempt to produce a malleable satisfying witness for the …","Computes the scriptCode of a transaction output.","Computes the scriptpubkey of the descriptor.","Size, in bytes of the script-pubkey. If this Miniscript is …","","","The type of signature required for satisfaction","","","Descriptor templates","","","","","","","","","Serialize a descriptor to string with its secret keys","Check top level consensus rules.","Check whether the top-level is type B","Converts a descriptor using abstract keys to one using …","Translates a struct from one generic to another where the …","","","","","","","","","","","","","The correctness and malleability type information for the …","","","","","","","Computes the scriptSig that will be in place for an …","","","","","","","Whether the descriptor is wildcard","Whether the miniscript can exceed the resource …","The extended key","Compute the checksum of a descriptor, excludes any …","Compute the checksum bytes of a descriptor, excludes any …","Compute the checksum of a descriptor","Compute the checksum bytes of a descriptor","Error during base58 decoding","BIP32 error","Errors related to the parsing and usage of descriptors","The descriptor contains hardened derivation steps on …","Hex decoding error","Invalid byte found in the descriptor checksum","The provided descriptor doesn’t match its checksum","Invalid HD Key path, such as having a wildcard but a …","Error thrown while working with keys","Miniscript error","Key-related error","Error while extracting and manipulating policies","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","Absolute timeclock timestamp","Can not add to an item that is Satisfaction::None or …","Can not add to an item that is …","Options to build the satisfaction field in the policy","Can satisfy the policy item","An extra condition that must be satisfied but that is out …","Type for a map of sets of Condition items keyed by each set…","ECDSA Signature for a raw public key","An extended key fingerprint","Type for a map of folded sets of Condition items keyed by …","SHA256 then RIPEMD160 preimage hash","Double SHA256 preimage hash","Incompatible conditions (not currently used)","Index out of range for an item to satisfy a …","Can not merge CSV or timelock values unless both are less …","Multi-signature public keys with threshold count","Cannot satisfy or contribute to the policy item","Don’t generate satisfaction field","Not enough items are selected to satisfy a …","Only a partial satisfaction of some kind of threshold …","Can reach the threshold of some kind of threshold policy","A unique identifier for a key","Descriptor spending policy","Errors that can happen while extracting and manipulating …","Analyze the given PSBT to check for existing signatures","Like Psbt variant and also check for expired timelocks","A legacy public key","Relative timelock locktime","RIPEMD160 preimage hash","Represent if and how much a policy item is satisfied by …","An item that needs to be satisfied","Schnorr Signature for a raw public key","SHA256 preimage hash","Threshold items with threshold count","A x-only public key","","","","","","","","","","","","","","","","","","","","","","","","","","","How the wallet’s descriptor can satisfy this policy node","Optional CheckSequenceVerify condition","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Return the conditions that are set by the spending policy …","","","","","Returns a unique id for the SatisfiableItem","Identifier for this policy node","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Returns whether the SatisfiableItem is a leaf item","Returns whether the Satisfaction is a leaf item","Returns true if there are no extra conditions to verify","Type of this policy node","","","Return whether or not a specific path in the policy tree …","How much a given PSBT already satisfies this policy node …","","","","","","Optional timelock condition","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Current blockchain height","The highest confirmation height between the inputs CSV …","Given PSBT","Extra conditions that also need to be satisfied","Extra conditions that also need to be satisfied","Extra conditions that also need to be satisfied","The items that can be satisfied by the descriptor or are …","The items that can be satisfied by the descriptor","Threshold","Threshold","Total number of items","Total number of items","Whether the items are sorted in lexicographic order (used …","Whether the items are sorted in lexicographic order (used …","The digest value","The digest value","The digest value","The digest value","The policy items","The raw public key or extended key fingerprint","The required threshold count","The required threshold count","The timelock value","The timelock value","BIP44 template. Expands to pkh(key/44'/{0,1}'/0'/{0,1}/*)","BIP44 public template. Expands to pkh(key/{0,1}/*)","BIP49 template. Expands to …","BIP49 public template. Expands to sh(wpkh(key/{0,1}/*))","BIP84 template. Expands to wpkh(key/84'/{0,1}'/0'/{0,1}/*)","BIP84 public template. Expands to wpkh(key/{0,1}/*)","Trait for descriptor templates that can be built into a …","Type alias for the return type of DescriptorTemplate, …","P2PKH template. Expands to a descriptor pkh(key)","P2WPKH template. Expands to a descriptor wpkh(key)","P2WPKH-P2SH template. Expands to a descriptor sh(wpkh(key))","","","","","","","","","","","","","","","","","","","Build the complete descriptor","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","BIP32 error","Trait for keys that can be derived.","Container for public or secret keys","The descriptor pubkey, either a single pubkey or an xpub.","The descriptor secret key, either a single private key or …","Type specifying the amount of entropy required e.g. [u8;32]","Returned error in case of failure","Trait that adds extra useful methods to ScriptContexts","Enum for extended keys that can be either xprv or xpub","A bitcoin public key (compressed or uncompressed).","Trait that allows generating a key with the default options","Trait for keys that can be generated","Output of a GeneratableKey key generation","Trait for objects that can be turned into a public or …","The key has an invalid checksum","The key is not valid for the given network","The key cannot exist in the given script context","The consensus key associated with the type. Must be a …","Errors thrown while working with keys","Alias type for a map of public key to secret key","Legacy scripts","Custom error message","Miniscript error","Extra options required by the generate_with_entropy","A private extended key, aka an xprv","Options for generating a PrivateKey","A public extended key, aka an xpub","The ScriptContext for Miniscript. Additional type …","Enum representation of the known valid ScriptContexts","Segwitv0 scripts","Single public key.","Single private key.","A descriptor bitcoin::PrivateKey with optional origin …","A descriptor SinglePubKey with optional origin information.","Single public key without any origin or range information.","Contents of a “sortedmulti” descriptor","Taproot scripts","Set of valid networks for a key","An xonly public key.","Extended private key (xpriv).","Extended public key (xpub).","Create a set containing mainnet, testnet and regtest","Returns the ScriptContext as a ScriptContextEnum","Replaces any wildcard (i.e. /*) in the key with a …","BIP-0039","","","","","","","","","","","","","","","","","","","","","","","","","Depending on script Context, some of the Terminals might …","Depending on script Context, some of the script resource …","Check the consensus + policy(if not disabled) rules that …","Consensus rules at the Miniscript satisfaction time. It is …","Policy rules at the Miniscript satisfaction time. It is …","Check the consensus + policy(if not disabled) rules …","Depending on ScriptContext, fragments can be malleable. …","Check whether the given satisfaction is valid under the …","","","","","","","","","","","","","","","","","","","Whether the generated key should be “compressed” or not","","","","","","","","","","","","","","","","","","","","","","","","","","","Deprecated name of [at_derivation_index].","","","","","","","","","","","","","Encode as a Bitcoin script","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Create an instance given a public key and a set of valid …","Create an instance given a secret key and a set of valid …","","","Parse an expression tree into a SortedMultiVec","Full path, from the master key","Generate a key given the options with a random entropy","Generate a key with the default options and a random …","Generate a key given the extra options and the entropy","Generate a key with the default options and a given entropy","","","","","Return whether or not the key contains the private data","Whether or not the key has a wildcard","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Turn the key into a DescriptorKey within the requested …","Consume self and turn it into a DescriptorKey by adding …","","","","","","Consume self and turn it into an ExtendedKey","","","Consumes self and returns the key","Transform the ExtendedKey into an ExtendedPrivKey for the …","Transform the ExtendedKey into an ExtendedPubKey for the …","Whether or not the key has a wildcard","Returns whether the script context is Legacy","Returns whether the script context is …","Returns whether the script context is Segwitv0","Returns whether the script context is …","Returns whether the script context is Tap, aka Taproot or …","Returns whether the script context is …","","","signatures required","The public key.","The private key.","","Create a set only containing mainnet","The fingerprint of the master key associated with this …","Depending on script context, the size of a satifaction …","Maximum size, in bytes, of a satisfying witness. In …","Maximum number of witness elements used to satisfy the …","Compute the intersection of two sets","Local helper function to display error messages with …","Create a new instance of SortedMultiVec given a list of …","Origin information (fingerprint and derivation path).","Origin information (fingerprint and derivation path).","Other top level checks that are context specific","Override the computed set of valid networks","","","","","Get the len of public key when serialized based on context …","public keys inside sorted Multi","","utility function to sanity a sorted multi vec","Attempt to produce a satisfying witness for the witness …","Size, in bytes of the script-pubkey. If this Miniscript is …","The type of signature required for satisfaction","Create Terminal::Multi containing sorted pubkeys","Create a set containing testnet and regtest","","","","","","","","Returns the public version of this key.","","","","","Check top level consensus rules.","Check whether the top-level is type B","This will panic if fpk returns an uncompressed key when …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The mnemonic can be interpreted as multiple languages. Use …","Entropy was not a multiple of 32 bits or between 128-256n …","Mnemonic has a word count that is not a multiple of 6.","The English language.","A BIP39 error.","The mnemonic has an invalid checksum.","Language to be used for the mnemonic phrase.","A mnemonic code.","Type for a BIP39 mnemonic with an optional passphrase","Mnemonic contains an unknown word. Error contains the …","Type describing entropy length (aka word count) in the …","12 words mnemonic (128 bits entropy)","15 words mnemonic (160 bits entropy)","18 words mnemonic (192 bits entropy)","21 words mnemonic (224 bits entropy)","24 words mnemonic (256 bits entropy)","The list of supported languages. Language support is …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Create a new English Mnemonic from the given entropy. …","Create a new Mnemonic in the specified language from the …","","Generate a new Mnemonic in the given language with the …","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","Get the language of the Mnemonic.","Determine the language of the mnemonic.","Parse a mnemonic and detect the language from the enabled …","Parse a mnemonic in the given language.","Parse a mnemonic in normalized UTF8 in the given language.","Parse a mnemonic in normalized UTF8.","","","","","Convert the mnemonic back to the entropy used to generate …","Convert the mnemonic back to the entropy used to generate …","","","","Convert to seed bytes.","Convert to seed bytes with a passphrase in normalized UTF8.","","","","","","","","","","","","","","","","","","","","Get the number of words in the mnemonic.","Get an iterator over the words.","Get words from the word list that start with the given …","Trait to add functions to extract utxos and calculate fees.","The total transaction fee amount, sum of input amounts …","The transaction’s fee rate. This value will only be …","Get the TxOut for the specified input index, if it doesn’…","The address index selection strategy to use to derived an …","A derived address and the index it was found at For …","Trait to check if a value is below the dust limit. We are …","Return the address for the current descriptor index if it …","Return a new address after incrementing the current …","Return the address for a specific descriptor index. Does …","Return the address for a specific descriptor index and …","Options to a sync.","A Bitcoin wallet","Add an external signer","Address","","","","","","","","","Bump the fee of a transaction previously created with this …","Start building a transaction.","Coin selection","Return an immutable reference to the internal database","","","","","","","","","","","Return the checksum of the public descriptor associated to …","","","","","Ensures that there are at least max_addresses addresses …","","Wallet export","Finalize a PSBT, i.e., for each input determine if …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Return a derived address using the external descriptor, …","Return the balance, separated into available, …","Returns the descriptor used to create addresses for a …","Return a fake wallet that appears to be funded for testing.","Return a derived address using the internal (change) …","get the corresponding PSBT Input for a LocalUtxo","Get the signers","Return a single transactions made and received by the …","Returns the UTXO owned by this wallet corresponding to …","HWI Signer","Child index of this address","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Check whether or not a value is below dust limit","Return whether or not a script is part of this wallet …","Type of keychain","Return an unsorted list of transactions made and received …","Return the list of unspent outputs of this wallet","Get the Bitcoin network the wallet is using.","Create a wallet.","Create a new “offline” wallet","Return the spending policies for the wallet’s descriptor","The progress tracker which may be informed when progress …","Return the “public” version of the wallet’s …","Return the secp256k1 context used for all signing …","Sign a transaction with all the wallet’s signers, in the …","Generalized signers","Sync the internal database with the blockchain","Cross-platform time","","","","","","","","","","Transaction builder","","","","","Verify transactions against the consensus rules","","","","","Deterministically generate a unique name given the …","Branch and bound coin selection","It’s possible to create spendable output from excess …","Trait for generalized coin selection algorithms","Result of a successful coin selection","Default coin selection algorithm used by TxBuilder if not …","Remaining amount after performing coin selection","Simple and dumb coin selection","It’s not possible to create spendable output from excess …","OldestFirstCoinSelection always picks the utxo with the …","","","","","","","","","","","","","","","Perform the coin selection","","","","Decide if change can be created","","","","","","","","","","","","","","","","","","","Remaining amount after deducing fees and outgoing outputs","Total fee amount for the selected utxos in satoshis","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","The total value of the inputs selected from the local …","Create new instance with target size for change output","List of outputs selected for use as inputs","The total value of the inputs selected.","","","","","","","","","","","","","","","","","","","","","","","Effective amount available to create change after …","The calculated fee for the drain TxOut with the selected …","Threshold to consider amount as dust for this particular …","The deducted change output fee","Exceeding amount of current selection over outgoing value …","Structure that contains the export of a wallet","Alias for FullyNodedExport","Earliest block to rescan when looking for the wallet’s …","","","Return the internal descriptor, if present","","","Return the external descriptor","","","Export a wallet","","Returns the argument unchanged.","","","Calls U::from(self).","Arbitrary label for the wallet","","","","","","","Custom signer for Hardware Wallets","","","","","","","Returns the argument unchanged.","Create a instance from the specified device and chain","","","Calls U::from(self).","","","","","","The signer will sign all the leaves it has a key for.","Dummy identifier","The signer won’t sign the specified leaves.","The fingerprint of a BIP32 extended key","Error while signing using hardware wallets","The signer won’t sign leaves other than the ones …","Input index is out of range","PSBT Input signer","The private key in use has the right fingerprint but …","The non_witness_utxo specified is invalid","Invalid SIGHASH for the signing context in use","Legacy context","The fingerprint and derivation path are missing from the …","The private key is missing for the required public key","The non_witness_utxo field of the transaction is required …","The witness_script field of the transaction is required to …","The witness_utxo field of the transaction is required to …","The psbt contains a non-SIGHASH_ALL sighash in one of its …","The signer won’t sign any leaf.","Bitcoin HASH160 (RIPEMD160 after SHA256) hash of an ECDSA …","Segwit v0 context (BIP 143)","Error while computing the hash to sign","Options for a software signer","Common signer methods","Signing context","Signing error","Identifier of a signer in the SignersContainers. Used as a …","Defines the order in which signers are called","Wrapper structure to pair a signer with its context","Container for multiple signers","Taproot context (BIP 340)","Customize which taproot script-path leaves the signer …","PSBT signer","The user canceled the operation","Adds an external signer to the container for the specified …","Whether the signer should use the sighash_type set in the …","Whether we should grind ECDSA signature to ensure signing …","Create a map of public keys to secret keys","Whether the wallet should assume a specific height has …","","","","","","","","","","","","","","","","","Build a new signer container from a KeyMap","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Return the secret key for the signer","","","","","","","","","","","","","","","","Finds the signer with lowest ordering for a given id in …","","","","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Return the SignerId for this signer","","","Returns the list of identifiers of all the signers in the …","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Create a wrapped signer from a signer and a context","Default constructor","","","","Removes a signer from the container and returns it","Whether to remove partial signatures from the PSBT inputs …","Sign a single psbt input","","","Sign all the inputs of the psbt","","Whether we should try to sign a taproot transaction with …","Returns the list of signers in the container, sorted by …","Specifies which Taproot script-spend leaves we should sign …","","","","","","","","","","Whether the signer should trust the witness_utxo, if the …","Whether to try finalizing the PSBT after the inputs are …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Whether the signer can sign for the internal key or not","Return the current timestamp in seconds","BIP69 / Lexicographic","Marker type to indicate the TxBuilder is being used to …","Use both change and non-change outputs (default)","Only use non-change outputs (see …","Policy regarding the use of change outputs when creating a …","Marker type to indicate the TxBuilder is being used to …","Only use change outputs (see TxBuilder::only_spend_change)","Randomized (default)","A transaction builder","Context in which the TxBuilder is valid","Ordering of the transaction’s inputs and outputs","Unchanged","Add data as an output, using OP_RETURN","Add a foreign UTXO i.e. a UTXO not owned by this wallet.","Fill-in the PSBT_GLOBAL_XPUB field with the extended keys …","Add a recipient to the internal list","Add a utxo to the internal list of unspendable utxos","Add a utxo to the internal list of utxos that must be spent","Add the list of outpoints to the internal list of UTXOs …","Set whether or not the dust limit is checked.","Explicitly tells the wallet that it is allowed to reduce …","","","","","","","","","","","Set a specific ChangeSpendPolicy. See …","","","","","","","","","","","","","Choose the coin selection algorithm","Set the current blockchain height.","","","","","","","","","","","","","","","Do not spend change outputs","Sets the address to drain excess coins to.","Spend all the available inputs. This respects filters like …","","","","","","Enable signaling RBF","Enable signaling RBF with a specific nSequence value","","","Set an absolute fee","Set a custom fee rate","Finish building the transaction.","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Fill-in the psbt::Output::redeem_script and …","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Only spend utxos added by add_utxo.","Use a specific nLockTime while creating the transaction","Only spend change outputs","Only Fill-in the psbt::Input::witness_utxo field when …","Choose the ordering for inputs and outputs of the …","","","Set the policy path to use while creating the transaction …","Replace the recipients already added with a new list","Sign with a specific sig hash","Sort transaction inputs and outputs by TxOrdering variant","","","","","","","","","","","","","","","","","","","","","Replace the internal list of unspendable utxos with a new …","Build a transaction with a specific version","","","","","","Consensus error","Generic error","The transaction being spent doesn’t have the requested …","The transaction being spent is not available in the …","Error during validation of a tx agains the consensus rules","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","Verify a transaction against the consensus rules",""],"i":[0,19,0,19,19,19,19,0,19,19,19,0,19,2,0,19,19,19,13,19,0,19,19,2,19,19,19,19,19,19,19,19,0,13,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,0,19,19,19,0,19,0,19,0,19,0,0,19,0,0,1,2,2,4,2,0,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,2,2,4,11,12,13,14,15,1,2,4,11,12,13,14,15,1,14,15,14,1,0,4,15,1,4,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,0,0,2,11,14,15,1,19,2,4,11,12,13,14,15,1,2,4,11,12,13,14,15,1,14,4,4,19,19,2,4,11,12,13,14,15,1,1,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,2,4,11,12,13,14,15,15,1,4,4,4,4,4,4,2,11,1,1,2,11,15,1,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,11,11,0,15,13,11,4,14,15,19,0,14,12,14,2,11,14,15,1,0,4,1,0,15,2,4,11,12,13,14,15,1,19,1,14,1,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,14,13,11,19,2,4,11,12,13,14,15,1,1,12,232,0,19,2,4,11,12,13,14,15,1,0,2,233,234,233,234,235,236,237,237,53,0,0,0,0,0,0,238,0,0,0,0,53,53,0,0,0,239,0,0,0,0,0,0,0,0,0,53,54,55,53,54,55,240,239,239,53,54,55,53,54,55,0,54,55,53,54,55,53,54,55,53,54,55,0,53,0,240,53,54,55,53,54,55,238,241,240,53,242,243,53,53,54,55,53,54,55,0,0,0,0,239,53,54,55,53,54,55,53,54,55,53,54,55,61,54,55,53,54,55,244,244,0,0,63,64,63,64,63,64,63,64,63,64,63,64,63,64,64,63,64,63,64,64,63,64,64,63,64,63,63,63,63,63,64,64,64,64,64,63,63,63,63,63,63,64,63,64,64,64,63,64,63,64,63,64,63,64,63,63,34,0,34,0,0,0,34,34,34,34,34,34,34,34,0,34,34,34,0,34,34,34,73,74,73,78,66,74,71,34,73,78,66,74,71,34,66,74,71,74,71,78,78,73,73,78,66,74,71,34,73,78,66,74,71,34,74,71,73,78,66,74,71,34,74,71,66,73,78,66,74,71,34,34,73,78,66,74,71,34,34,34,34,34,34,66,66,66,66,78,78,73,66,78,73,73,78,66,74,71,34,73,78,66,74,71,34,78,73,71,73,66,71,34,78,78,74,71,71,74,74,71,74,71,34,73,78,66,74,71,34,73,78,66,74,71,34,73,78,66,74,71,34,73,78,66,74,71,34,66,0,0,68,69,68,69,68,69,69,68,68,69,68,69,69,68,69,69,68,69,68,68,69,68,68,68,68,68,68,69,68,69,69,69,69,69,69,69,68,69,68,69,68,69,69,69,68,69,68,28,0,0,0,28,28,28,28,28,28,28,28,28,28,70,28,67,70,28,67,70,67,70,70,70,28,67,67,70,28,67,70,70,28,67,70,70,67,28,28,67,70,28,28,28,28,28,28,28,67,70,67,67,67,67,67,67,28,67,70,28,67,70,67,70,28,70,70,70,70,70,28,28,67,70,28,67,70,28,67,70,28,67,70,67,67,0,98,98,0,0,0,0,98,72,96,65,72,97,98,96,65,72,97,98,96,65,96,72,97,98,96,72,97,98,96,98,97,96,65,65,72,97,98,96,65,72,97,98,96,72,97,98,65,72,97,98,96,72,97,98,65,65,72,97,98,96,97,65,72,97,98,96,65,65,65,98,65,65,98,65,72,97,98,96,65,72,97,98,96,72,96,98,97,72,97,98,97,97,72,96,72,97,98,96,65,72,97,98,96,65,72,97,98,96,65,72,97,98,96,72,96,65,72,97,98,96,72,96,65,245,246,246,0,0,223,0,0,247,0,0,0,0,0,0,223,99,100,99,100,99,100,248,99,100,100,223,99,99,249,99,249,99,249,99,249,99,249,99,249,99,249,99,99,100,99,100,100,99,100,99,100,99,100,247,99,248,99,248,99,248,99,248,99,248,99,248,99,248,99,248,99,99,100,99,100,248,99,248,99,248,99,248,99,0,99,99,100,249,99,249,99,249,99,249,99,249,99,249,99,100,99,100,99,100,99,100,99,100,0,0,0,103,102,106,103,102,106,0,103,102,106,0,102,103,102,104,105,106,103,102,104,105,106,102,102,103,102,103,102,103,102,103,102,103,102,103,102,103,102,103,102,104,105,106,103,102,104,105,106,104,105,106,103,102,104,105,106,102,104,105,106,103,103,103,103,102,102,102,102,104,105,106,106,106,106,102,102,102,102,102,102,102,102,102,103,102,104,105,106,103,102,104,105,106,102,102,102,102,104,105,104,105,106,103,102,103,102,103,102,103,102,103,102,103,102,104,103,102,104,105,106,103,102,104,105,106,103,102,104,105,106,103,102,104,105,106,0,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,109,0,0,0,0,0,0,0,118,0,0,130,0,0,0,118,109,0,0,0,109,114,0,109,118,0,109,109,114,109,119,120,112,109,117,118,109,119,120,112,117,118,109,119,120,112,112,0,130,119,120,130,120,130,130,119,120,130,119,120,130,130,119,120,130,119,120,0,117,118,109,119,120,112,117,118,109,119,120,112,117,118,109,119,120,112,112,117,118,109,119,120,112,117,118,109,119,120,112,117,109,109,109,109,109,112,117,118,109,119,120,112,112,117,118,109,119,120,112,0,109,112,112,250,109,112,109,117,118,109,109,119,120,112,112,109,112,117,118,109,109,109,109,109,109,109,119,120,112,112,109,112,112,112,109,112,117,118,109,119,120,112,112,112,109,109,112,112,109,117,118,109,119,120,112,117,118,109,119,120,112,117,118,109,119,120,112,112,203,139,109,112,112,112,109,112,112,117,130,119,120,112,109,112,130,119,120,109,109,109,109,109,109,109,109,109,109,109,109,109,109,112,117,130,112,109,112,112,117,118,109,119,120,112,130,119,120,0,112,109,112,109,112,112,109,109,112,109,112,130,119,120,0,117,118,109,119,120,112,109,112,109,130,130,109,112,117,118,109,119,120,112,117,118,109,119,120,112,112,117,118,109,119,120,112,109,117,118,109,119,120,112,117,112,117,0,0,0,0,37,37,0,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,153,36,36,0,154,0,0,153,152,0,153,153,36,36,36,153,154,128,36,154,154,0,0,0,128,128,152,153,153,0,0,153,153,153,152,152,153,154,129,155,36,128,152,153,154,129,155,36,128,152,153,154,129,155,128,152,153,154,129,155,128,129,155,155,152,153,154,129,155,36,128,152,153,154,129,155,36,128,152,153,154,129,155,36,128,152,153,154,129,155,36,152,153,154,129,155,36,36,128,152,153,154,154,129,129,155,36,128,129,152,155,152,155,153,129,152,153,154,129,155,36,128,152,153,154,129,155,36,128,153,154,155,129,155,36,129,129,152,153,154,129,155,155,152,153,154,129,155,128,36,152,153,154,129,155,36,128,152,153,154,129,155,36,128,152,153,154,129,155,36,128,152,153,154,129,155,36,128,251,251,251,252,253,254,253,254,253,254,253,254,253,254,255,256,257,258,259,260,260,259,261,262,0,0,0,0,0,0,0,0,0,0,0,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,263,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,157,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,30,0,0,0,0,264,264,0,0,174,0,0,0,0,30,30,30,130,0,0,111,30,30,264,181,0,181,0,0,111,114,176,0,0,0,0,111,0,174,176,114,0,265,114,0,181,171,172,114,176,173,177,174,179,111,175,30,181,171,172,114,176,173,177,174,179,111,175,30,130,130,130,130,130,130,130,130,171,172,114,173,174,111,175,171,172,114,173,174,111,175,172,114,173,174,175,175,181,171,171,172,114,176,173,177,174,179,111,175,30,181,171,172,114,176,173,177,174,179,111,175,30,114,181,171,172,114,176,173,177,174,179,111,175,30,172,172,114,173,174,111,172,172,114,114,176,176,173,177,174,179,111,175,30,30,172,181,181,181,171,172,114,114,176,173,177,174,179,111,175,30,30,30,179,179,114,176,172,114,264,266,264,266,172,114,173,174,181,114,172,114,173,174,181,171,172,114,176,173,177,174,179,111,175,30,181,171,172,114,176,173,177,174,179,111,175,30,158,162,171,171,114,176,179,162,181,171,171,181,181,114,265,111,265,111,265,111,114,114,172,173,177,172,0,114,130,172,172,0,130,172,173,177,130,179,172,114,173,174,130,172,30,172,172,172,130,172,0,171,172,114,173,174,111,175,176,172,114,176,30,130,130,172,181,171,172,114,176,173,177,174,179,111,175,30,181,171,172,114,176,173,177,174,179,111,175,30,181,171,172,114,176,173,177,174,179,111,175,30,181,171,172,114,176,173,177,174,179,111,175,30,187,187,187,186,0,187,0,0,0,187,0,267,267,267,267,267,186,186,187,188,267,186,187,188,267,186,187,188,186,187,188,186,188,186,187,188,267,186,187,188,267,188,186,187,188,267,186,187,188,186,186,187,187,188,188,186,187,188,267,188,188,188,188,188,186,188,186,188,186,187,188,267,186,187,188,267,188,189,188,189,188,188,188,188,188,188,186,188,187,188,188,188,186,187,188,188,188,186,187,188,186,187,188,267,186,187,188,267,186,187,188,267,186,187,188,267,188,188,186,0,268,268,268,0,0,0,200,200,200,200,0,0,52,197,52,200,197,59,52,200,197,59,52,52,0,52,59,52,200,197,197,59,52,200,197,59,52,52,200,197,59,52,197,0,52,52,200,197,197,59,52,200,197,59,52,52,52,0,52,52,52,52,52,0,197,52,200,197,59,52,200,197,59,269,52,197,52,52,52,52,52,52,59,52,52,52,0,52,0,197,52,200,197,59,52,200,197,59,0,52,200,197,59,0,52,200,197,59,0,0,208,0,0,0,0,0,208,0,208,206,204,205,207,208,206,204,205,207,204,205,204,205,224,204,205,207,0,204,205,207,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,206,206,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,206,207,206,206,204,205,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,270,271,271,270,271,0,0,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,0,210,210,210,210,210,210,210,210,210,210,210,210,210,210,210,210,219,214,219,214,31,219,31,0,31,31,31,216,31,31,31,31,31,31,219,214,216,31,0,0,0,0,0,0,0,0,216,0,0,31,127,199,199,127,199,214,31,216,218,190,127,199,219,214,31,216,218,190,127,199,219,127,214,31,216,218,190,127,199,219,214,31,216,218,190,127,199,219,214,190,190,127,199,219,214,31,216,218,218,190,127,199,219,214,31,216,218,190,127,199,219,272,218,218,214,31,216,218,190,127,199,219,214,31,216,190,219,127,214,31,31,216,218,190,127,199,219,214,214,214,31,31,31,216,218,190,127,199,219,214,214,272,218,218,127,214,31,216,218,190,127,199,219,214,31,216,218,190,127,199,219,218,127,214,190,31,127,199,273,218,218,191,218,199,127,199,214,31,216,218,190,127,199,219,31,199,199,214,31,216,218,190,127,199,219,214,31,216,218,190,127,199,219,214,31,216,218,190,127,199,219,214,31,216,218,190,127,199,219,274,0,227,0,226,226,0,0,226,227,0,0,0,227,194,194,194,194,194,194,194,194,194,195,193,194,227,226,195,193,194,227,226,194,195,193,194,227,226,195,193,194,227,226,227,226,194,194,195,193,227,226,195,193,194,227,226,195,193,194,227,226,194,194,194,195,193,194,227,226,194,194,227,226,194,194,194,195,193,194,227,226,195,193,194,227,226,227,226,227,226,194,195,193,194,227,226,195,193,194,227,226,194,194,194,194,194,227,226,194,194,194,227,195,193,194,227,226,195,193,194,227,226,195,193,194,227,226,195,193,194,227,226,194,194,195,193,194,227,226,29,29,29,29,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,29],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,1],1],[2,3],[2],[4,5],[[],6],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[10,[[9,[7,8]]]]]],[2,2],[4,4],[11,11],[12,12],[13,13],[14,14],[15,15],[1,1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[14,14],16],[[15,15],16],0,0,0,[[],4],[[],15],[[],1],[[],4],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[],[[10,[2]]]],[[],[[10,[11]]]],[[],[[10,[14]]]],[[],[[10,[15]]]],[[],[[10,[1]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[2,2],17],[[4,4],17],[[11,11],17],[[12,12],17],[[13,13],17],[[14,14],17],[[15,15],17],[[1,1],17],0,[[4,6],18],[[4,6],18],[[19,20],21],[[19,20],21],[[2,20],21],[[4,20],21],[[11,20],21],[[12,20],21],[[13,20],21],[[14,20],21],[[15,20],21],[[1,20],21],[[1,20],21],0,[[]],[22,19],[23,19],[24,19],[25,19],[26,19],[27,19],[28,19],[29,19],[30,19],[31,19],[32,19],[33,19],[34,19],[35,19],[36,19],[37,19],[38,19],[39,19],[40,19],[[]],[[]],[[]],[[]],[[]],[[]],[41,15],[[]],[[]],[5,4],[5,4],[5,4],[5,4],[[18,6],4],[[18,6],4],[[],18],[[],18],[1,18],[1,18],[2],[11],0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[[43,[42]],[43,[18]]],[[43,[15]]]],[13,44],0,[[4,4],[[43,[16]]]],[[14,14],[[43,[16]]]],[[15,15],[[43,[16]]]],[45],0,0,0,0,[2,10],[11,10],[14,10],[15,10],[1,10],0,[[4,4]],[46,1],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],47],[[],47],0,0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,[13,48],0,[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],0,0,[[],6],[[],50],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[51,[[10,[19]]]],[[50,[43,[42]]],[[10,[19]]]],[[52,[43,[42]]],[[10,[19]]]],[53,53],[54,54],[55,55],[[]],[[]],[[]],0,[[],54],[[],55],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[[53,53],17],0,[6,[[10,[4,19]]]],[[53,20],21],[[54,20],21],[[55,20],21],[[]],[[]],[[]],[[],[[10,[19]]]],[18,[[10,[56,19]]]],[[],[[57,[53]]]],[[],18],[[],[[10,[42,19]]]],[58,[[10,[[43,[51]],19]]]],[53],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[],55],[[],54],[[]],0,[[52,[43,[42]],59],[[10,[19]]]],[[]],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[5,[43,[47]]],[[10,[19]]]],[[54,5,[43,[47]]],[[10,[19]]]],[[55,5,[43,[47]]],[[10,[19]]]],[[]],[[]],[[]],[[60,[62,[61]]],[[10,[19]]]],[[60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[63,51],[[10,[19]]]],[64,64],[[]],[6],[6],[6],[6],[[],[[10,[64]]]],[6],[6],[[64,64],17],[[63,6],[[10,[4,19]]]],[[64,20],21],[65,63],[66,63],[67,63],[[]],[68,63],[69,64],[70,64],[71,64],[72,64],[[]],[[],[[10,[63,19]]]],[[63,18],[[10,[56,19]]]],[63,[[57,[53]]]],[63,[[10,[42,19]]]],[[63,58],[[10,[[43,[51]],19]]]],[[],6],[[],6],[[]],[[]],[64,10],[[]],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[]],[[]],[[63,60,[62,[61]]],[[10,[19]]]],[[63,60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[73,51]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[66,51],[[10,[19]]]],[74,74],[71,71],[[]],[[]],[[75,[76,[73]],77],[[10,[78,34]]]],[[79,75,43,[76,[73]],77],[[10,[78,34]]]],[[],73],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[74]]]],[[],[[10,[71]]]],[6],[6],[6],[6],[6],[6],[[74,74],17],[[71,71],17],[[66,6],[[10,[4,19]]]],[[73,20],21],[[78,20],21],[[66,20],21],[[74,20],21],[[71,20],21],[[34,20],21],[[34,20],21],[[]],[[]],[[]],[[]],[[]],[19,34],[80,34],[81,34],[82,34],[83,34],[[]],[[],[[10,[66,19]]]],[[66,18],[[10,[56,19]]]],[66,[[57,[53]]]],[66,[[10,[42,19]]]],[78,[[76,[73]]]],[78,77],[[73,84],[[43,[51]]]],[[66,58],[[10,[[43,[51]],19]]]],[78,85],[[73,58],17],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[78,17],[73,[[9,[51]]]],0,[[],73],[[[9,[78]],[87,[86]],[43,[6]]],[[10,[66,34]]]],0,[45],[[78,50,[43,[88]]],[[10,[[43,[89]],34]]]],[[78,89],[[10,[34]]]],[74,10],[71,10],0,0,0,0,[[]],[[]],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[66,60,[62,[61]]],[[10,[19]]]],0,0,[[]],[[]],[[]],[[]],[[68,51],[[10,[19]]]],[69,69],[[]],[6],[68],[6],[6],[6],[[],[[10,[69]]]],[6],[6],[[69,69],17],[[68,6],[[10,[4,19]]]],[[69,20],21],[[]],[90,68],[[]],[[],[[10,[68,19]]]],[[68,18],[[10,[56,19]]]],[68,[[57,[53]]]],[68,[[10,[42,19]]]],[[68,58],[[10,[[43,[51]],19]]]],[[],6],[[],6],[[]],[[]],0,[69,10],0,0,0,[[]],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],0,0,[[]],[[]],[[68,60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[67,51],[[10,[19]]]],[70,70],[[]],0,[6],[6],[67],[6],[6],[6],[6],[[],[[10,[70]]]],[6],[6],[6],[[70,70],17],[[67,6],[[10,[4,19]]]],[[28,20],[[10,[91]]]],[[28,20],[[10,[91]]]],[[67,20],21],[[70,20],21],[[]],[92,28],[82,28],[23,28],[38,28],[93,28],[94,28],[[]],[[]],[[95,6],67],[[],[[10,[67,19]]]],[[67,18],[[10,[56,19]]]],[67,[[57,[53]]]],[67,[[10,[42,19]]]],[[67,58],[[10,[[43,[51]],19]]]],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[50,6],67],[[47,6],70],[45],0,[70,10],0,0,[[]],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[67,60,[62,[61]]],[[10,[19]]]],[[67,3],67],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[65,51],[[10,[19]]]],[[96,50,[43,[42]]],[[10,[19]]]],[72,72],[97,97],[98,98],[96,96],[[]],[[]],[[]],[[]],[[98,98],16],[[],97],0,[6],[65],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[72]]]],[[],[[10,[97]]]],[[],[[10,[98]]]],[6],[6],[6],[6],[6],[[72,72],17],[[97,97],17],[[98,98],17],[[65,6],[[10,[4,19]]]],[[65,20],21],[[72,20],21],[[97,20],21],[[98,20],21],[[96,20],21],0,[[]],[[]],[[]],[[]],[[]],[[],[[10,[65,19]]]],[[65,18],[[10,[56,19]]]],[65,[[57,[53]]]],[[],18],[65,[[10,[42,19]]]],[[65,58],[[10,[[43,[51]],19]]]],[98],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],0,0,[[98,98],[[43,[16]]]],0,[72,10],[97,10],[98,10],0,0,0,0,[[]],[[]],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],0,0,[[]],[[]],[[]],[[]],[[]],0,0,[[65,60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[99],0,[[]],[[]],[[]],[[]],[[2,87],[[10,[19]]]],[[99,2,87],[[10,[19]]]],[100,100],[[]],[[],[[10,[19]]]],[99,[[10,[19]]]],0,[2,[[10,[[43,[42]],19]]]],[[99,2],[[10,[[43,[42]],19]]]],[101,[[10,[43,19]]]],[[99,101],[[10,[43,19]]]],[58,[[10,[[43,[51]],19]]]],[[99,58],[[10,[[43,[51]],19]]]],[[2,42],[[10,[[43,[101]],19]]]],[[99,2,42],[[10,[[43,[101]],19]]]],[[],[[10,[[43,[100]],19]]]],[99,[[10,[[43,[100]],19]]]],[[58,17],[[10,[[43,[14]],19]]]],[[99,58,17],[[10,[[43,[14]],19]]]],[44,[[10,[[43,[11]],19]]]],[[99,44],[[10,[[43,[11]],19]]]],[6],[6],[6],[6],[[],[[10,[100]]]],[6],[6],[[99,20],21],[[100,20],21],[[]],[[]],[[],[[10,[19]]]],[[],[[10,[99,19]]]],[2,[[10,[[43,[42]],19]]]],[[99,2],[[10,[[43,[42]],19]]]],[101,[[10,[43,19]]]],[[99,101],[[10,[43,19]]]],[58,[[10,[[43,[51]],19]]]],[[99,58],[[10,[[43,[51]],19]]]],[[2,42],[[10,[[43,[101]],19]]]],[[99,2,42],[[10,[[43,[101]],19]]]],[[],[[10,[[43,[100]],19]]]],[99,[[10,[[43,[100]],19]]]],[[58,17],[[10,[[43,[14]],19]]]],[[99,58,17],[[10,[[43,[14]],19]]]],[44,[[10,[[43,[11]],19]]]],[[99,44],[[10,[[43,[11]],19]]]],[2,[[10,[42,19]]]],[[99,2],[[10,[42,19]]]],[[],6],[[],6],[[]],[[]],[[],[[10,[[9,[51]],19]]]],[99,[[10,[[9,[51]],19]]]],[[[43,[2]]],[[10,[[9,[101]],19]]]],[[99,[43,[2]]],[[10,[[9,[101]],19]]]],[17,[[10,[[9,[14]],19]]]],[[99,17],[[10,[[9,[14]],19]]]],[[],[[10,[[9,[11]],19]]]],[99,[[10,[[9,[11]],19]]]],0,[[[87,[86]]],99],0,[100,10],[[2,42],[[10,[19]]]],[[99,2,42],[[10,[19]]]],[51,[[10,[19]]]],[[99,51],[[10,[19]]]],[[101,2,42],[[10,[19]]]],[[99,101,2,42],[[10,[19]]]],[100,[[10,[19]]]],[[99,100],[[10,[19]]]],[14,[[10,[19]]]],[[99,14],[[10,[19]]]],[11,[[10,[19]]]],[[99,11],[[10,[19]]]],[[]],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[102],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[102,2,87],[[10,[19]]]],[102,[[10,[19]]]],[[103,2],[[10,[[43,[42]],19]]]],[[102,2],[[10,[[43,[42]],19]]]],[[103,101],[[10,[43,19]]]],[[102,101],[[10,[43,19]]]],[[103,58],[[10,[[43,[51]],19]]]],[[102,58],[[10,[[43,[51]],19]]]],[[103,2,42],[[10,[[43,[101]],19]]]],[[102,2,42],[[10,[[43,[101]],19]]]],[103,[[10,[[43,[100]],19]]]],[102,[[10,[[43,[100]],19]]]],[[103,58,17],[[10,[[43,[14]],19]]]],[[102,58,17],[[10,[[43,[14]],19]]]],[[103,44],[[10,[[43,[11]],19]]]],[[102,44],[[10,[[43,[11]],19]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[104]]]],[[],[[10,[105]]]],[[],[[10,[106]]]],[6],[6],[6],[6],[6],[[102,20],21],[[104,20],21],[[105,20],21],[[106,20],21],[[],103],[[],103],[[],103],[[]],[107,102],[108,102],[99,102],[[]],[[]],[[]],[104,106],[105,106],[[]],[[],106],[[],[[10,[102,19]]]],[[102,2],[[10,[[43,[42]],19]]]],[[102,101],[[10,[43,19]]]],[[102,58],[[10,[[43,[51]],19]]]],[[102,2,42],[[10,[[43,[101]],19]]]],[102,[[10,[[43,[100]],19]]]],[[102,58,17],[[10,[[43,[14]],19]]]],[[102,44],[[10,[[43,[11]],19]]]],[[102,2],[[10,[42,19]]]],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[102,[[10,[[9,[51]],19]]]],[[102,[43,[2]]],[[10,[[9,[101]],19]]]],[[102,17],[[10,[[9,[14]],19]]]],[102,[[10,[[9,[11]],19]]]],0,0,[104,10],[105,10],[106,10],[[103,2,42],[[10,[19]]]],[[102,2,42],[[10,[19]]]],[[103,51],[[10,[19]]]],[[102,51],[[10,[19]]]],[[103,101,2,42],[[10,[19]]]],[[102,101,2,42],[[10,[19]]]],[[103,100],[[10,[19]]]],[[102,100],[[10,[19]]]],[[103,14],[[10,[19]]]],[[102,14],[[10,[19]]]],[[103,11],[[10,[19]]]],[[102,11],[[10,[19]]]],0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],0,[108],[[]],[[]],[[108,2,87],[[10,[19]]]],[108,[[10,[19]]]],[[],108],[[108,2],[[10,[[43,[42]],19]]]],[[108,101],[[10,[43,19]]]],[[108,58],[[10,[[43,[51]],19]]]],[[108,2,42],[[10,[[43,[101]],19]]]],[108,[[10,[[43,[100]],19]]]],[[108,58,17],[[10,[[43,[14]],19]]]],[[108,44],[[10,[[43,[11]],19]]]],[6],[6],[6],[[108,20],21],[[]],[[],[[10,[108,19]]]],[[108,2],[[10,[[43,[42]],19]]]],[[108,101],[[10,[43,19]]]],[[108,58],[[10,[[43,[51]],19]]]],[[108,2,42],[[10,[[43,[101]],19]]]],[108,[[10,[[43,[100]],19]]]],[[108,58,17],[[10,[[43,[14]],19]]]],[[108,44],[[10,[[43,[11]],19]]]],[[108,2],[[10,[42,19]]]],[[],6],[[]],[108,[[10,[[9,[51]],19]]]],[[108,[43,[2]]],[[10,[[9,[101]],19]]]],[[108,17],[[10,[[9,[14]],19]]]],[108,[[10,[[9,[11]],19]]]],[[],108],[[108,2,42],[[10,[19]]]],[[108,51],[[10,[19]]]],[[108,101,2,42],[[10,[19]]]],[[108,100],[[10,[19]]]],[[108,14],[[10,[19]]]],[[108,11],[[10,[19]]]],[[],10],[[],10],[[],49],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[109,77],[[10,[110,33]]]],[[],111],[[],111],[112,113],[[[109,[114]],42],[[109,[115]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[112,[[9,[112,8]]]],0,[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[113,[[10,[116]]]],[113,[[10,[116]]]],[113,[[10,[116]]]],[[],[[10,[116]]]],[[],[[10,[116]]]],[[],[[10,[116]]]],0,[117,117],[118,118],[109,109],[119,119],[120,120],[112,112],[[]],[[]],[[]],[[]],[[]],[[]],[[117,117],16],[[118,118],16],[[109,109],16],[[119,119],16],[[120,120],16],[[112,112],16],[112,17],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[[[109,[114]],42],[[109,[115]]]],[[[109,[114]],121,42],[[10,[[109,[122]],123]]]],[[[109,[115]],121],[[10,[[109,[122]],123]]]],[109,124],[[],[[10,[109]]]],[[],[[10,[112]]]],[6],[6],[6],[6],[6],[6],[112,101],[[117,117],17],[[118,118],17],[[109,109],17],[[119,119],17],[[120,120],17],[[112,112],17],0,[109,[[10,[101,33]]]],0,[[112,125],[[10,[126]]]],[[127,128,121],[[10,[[43,[129]],37]]]],[[[109,[114]],127,128,121],[[10,[[43,[129]],37]]]],[[[112,[114,130]],127,128,121],[[10,[[43,[129]],37]]]],[[[109,[114]],121,101,[131,[42]]],[[10,[43,123]]]],[[117,20],[[10,[91]]]],[[118,20],[[10,[91]]]],[[109,20],[[10,[91]]]],[[109,20],[[10,[91]]]],[[119,20],[[10,[91]]]],[[120,20],[[10,[91]]]],[[112,20],[[10,[91]]]],[[112,20],[[10,[91]]]],[109,17],[112,17],[[]],[[]],[132,109],[133,109],[134,109],[[]],[135,109],[136,109],[137,109],[[]],[[]],[[]],[113,[[10,[112,33]]]],[50,[[10,[109,33]]]],[50,[[10,[112,33]]]],[[50,125],[[10,[112,33]]]],[50,[[10,[112,33]]]],[138,[[10,[109,33]]]],[138,[[10,[112,33]]]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[112,6],[[43,[112]]]],[[112,6],43],[109,[[10,[33]]]],[109,[[10,[33]]]],[112,17],[112,17],[[[109,[114]]],17],[117],[118],[109],[119],[120],[112],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[112,113],[[121,77],[[10,[37]]]],[[139,121,77],[[10,[37]]]],[[[109,[114]]],17],[112,17],[112,140],[112,141],[109,[[10,[142,33]]]],[112,[[10,[142,33]]]],[112,[[10,[143]]]],[[117,121],[[43,[144]]]],[112,[[43,[6]]]],[112,[[43,[6]]]],[112,[[43,[6]]]],[112,[[10,[6,33]]]],[109,[[10,[6,33]]]],[112,[[10,[6,33]]]],[[],50],[[],50],[[],50],[[[112,[145]]],[[10,[109,33]]]],[[],109],[[],109],[[[112,[119]]],[[10,[109,33]]]],[[6,[9,[8]]],[[10,[109,33]]]],[137,109],[135,109],[[],[[10,[109,33]]]],[[[112,[120]]],[[10,[109,33]]]],[[6,[9,[8]]],[[10,[109,33]]]],[[[43,[146]]],[[10,[109,33]]]],[[],[[10,[109,33]]]],[[[112,[120]]],[[10,[109,33]]]],[[6,[9,[8]]],[[10,[109,33]]]],0,0,[112,[[10,[33]]]],[101,[[10,[112,33]]]],[[121,50],[[10,[33]]]],[101,[[10,[112,33]]]],[[101,125],[[10,[112,33]]]],[[117,117],[[43,[16]]]],[[118,118],[[43,[16]]]],[[109,109],[[43,[16]]]],[[119,119],[[43,[16]]]],[[120,120],[[43,[16]]]],[[112,112],[[43,[16]]]],[[],6],[[],6],[[],6],0,[112,17],[109,[[10,[33]]]],[112,[[10,[126]]]],[[109,147],[[10,[33]]]],[112,[[10,[[9,[[9,[3,8]],8]],33]]]],[112,[[10,[[9,[[9,[3,8]],8]],33]]]],[109,[[10,[101,33]]]],[109,101],[112,6],[109,10],[112,10],[[],148],[[],148],[[],148],0,[[]],[[]],[[]],[[]],[[]],[[]],[[],47],[[],47],[[[109,[114]],149],47],[112,[[10,[33]]]],[112,[[10,[33]]]],[109,10],[112,10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[109,101],[[]],[[]],[[]],[[]],[[]],[[]],0,[112,17],0,[50,[[10,[47,37]]]],[50,[[10,[37]]]],[50,[[10,[47,37]]]],[50,[[10,[37]]]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[6],[6],[6],[[37,20],21],[[37,20],21],[24,37],[30,37],[33,37],[38,37],[36,37],[[]],[150,37],[151,37],[[],6],[[]],[45],[[],47],[[],10],[[],10],[[],49],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[152,152],[153,153],[154,154],[129,129],[155,155],[128,128],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],155],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[152,152],17],[[153,153],17],[[154,154],17],[[129,129],17],[[155,155],17],[[36,36],17],[[152,20],21],[[153,20],21],[[154,20],21],[[129,20],21],[[155,20],21],[[36,20],21],[[36,20],21],[[128,20],21],[[]],[[]],[[]],[17,154],[[]],[153,129],[[]],[[]],[[]],[[129,156],[[10,[155,36]]]],[[],18],[[],18],[152],[155],[153,47],0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[153,17],[154,17],[155,17],0,[[155,155],[[43,[16]]]],[45],[129,17],0,[152,10],[153,10],[154,10],[129,10],[155,10],0,[[]],[[]],[[]],[[]],[[]],[[]],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[77,[[10,[157,37]]]],[[[159,[[158,[119]]]],77],[[10,[157,37]]]],[[[160,[[158,[120]]]],77],[[10,[157,37]]]],[[[161,[[158,[120]]]],77],[[10,[157,37]]]],[[[163,[[162,[119]]]],77],[[10,[157,37]]]],[[[164,[[162,[119]]]],77],[[10,[157,37]]]],[[[165,[[162,[120]]]],77],[[10,[157,37]]]],[[[166,[[162,[120]]]],77],[[10,[157,37]]]],[[[167,[[162,[120]]]],77],[[10,[157,37]]]],[[[168,[[162,[120]]]],77],[[10,[157,37]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[157,121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[121,77],[[10,[37]]]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],169],[[],111],[[114,42],115],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[113,[[10,[116]]]],[[],[[10,[116]]]],[[[171,[170,130]]],[[171,[170,130]]]],[172,172],[114,114],[173,173],[174,174],[111,111],[175,175],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[172,172],16],[[114,114],16],[[173,173],16],[[174,174],16],0,[[],175],[6],[[[171,[130]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[114,42],115],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[172,101],[[172,172],17],[[114,114],17],[[173,173],17],[[174,174],17],[[111,111],17],[[172,20],[[10,[91]]]],[[172,20],[[10,[91]]]],[[114,20],[[10,[91]]]],[[114,20],[[10,[91]]]],[[176,20],[[10,[91]]]],[[176,20],[[10,[91]]]],[[173,20],[[10,[91]]]],[[177,20],[[10,[91]]]],[[174,20],[[10,[91]]]],[[[179,[[0,[178,130]]]],20],21],[[111,20],21],[[175,20],21],[[30,20],21],[[30,20],21],[172,17],[[]],[180,[[181,[130]]]],[182,[[181,[130]]]],[[]],[[]],[[]],[115,114],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,30],[[]],[24,30],[[114,169],[[179,[130]]]],[[176,169],[[179,[130]]]],[50,[[10,[114]]]],[50,[[10,[176]]]],[138,[[10,[172,33]]]],[114,144],[[],[[10,[171]]]],[[],[[10,[171]]]],[[],[[10,[171]]]],[[],[[10,[171]]]],[[],18],[[],18],[[],18],[[],18],[[[181,[130]]],17],[114,17],[172],[114],[173],[174],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[10,[179,30]]]],[[[43,[183]],144],[[10,[179,30]]]],[171,[[10,[179,30]]]],[[171,[43,[183]],144],[[10,[179,30]]]],[114,[[10,[[179,[130]],30]]]],[176,[[10,[[179,[130]],30]]]],[[[179,[130]]],[[10,[[179,[130]],30]]]],[[],[[10,[181,30]]]],[[[181,[130]]],[[10,[[181,[130]],30]]]],[171,[[10,[181,30]]]],[[[171,[130]]]],[[[181,[130]],77],[[43,[182]]]],[[[181,[130]],77,121],180],[114,17],[[],17],[111,17],[[],17],[111,17],[[],17],[111,17],[114,17],[114,17],0,0,0,[172,[[10,[142,33]]]],[[],169],[114,184],[112,[[43,[6]]]],[172,6],[172,6],[[169,169],169],[[],50],[[6,[9,[8]]],[[10,[172,33]]]],0,0,[112,[[10,[33]]]],[[[179,[130]],169],[[179,[130]]]],[[172,172],[[43,[16]]]],[[114,114],[[43,[16]]]],[[173,173],[[43,[16]]]],[[174,174],[[43,[16]]]],[[],6],0,[45],[172,[[10,[33]]]],[172,[[10,[[9,[[9,[3,8]],8]],33]]]],[172,6],[[],148],[172,113],[[],169],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[176,121],[[10,[114,185]]]],[[],47],[[],47],[[],47],[[],47],[112,[[10,[33]]]],[112,[[10,[33]]]],[172,[[10,[172]]]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[186,186],[187,187],[188,188],[[]],[[]],[[]],[[186,186],16],[[188,188],16],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[188]]]],[6],[6],[6],[6],[[186,186],17],[[187,187],17],[[188,188],17],[[186,20],[[10,[91]]]],[[186,20],[[10,[91]]]],[[187,20],[[10,[91]]]],[[187,20],[[10,[91]]]],[[188,20],[[10,[91]]]],[[188,20],[[10,[91]]]],[[]],[[]],[[]],[[]],[[],[[10,[188,187]]]],[186,[[10,[188,187]]]],[50,[[10,[188,187]]]],[[186,6],[[10,[188,187]]]],[[],[[10,[[171,[188,130]]]]]],[[],18],[[],18],[186],[188],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[188,[43,[183]],144],[[10,[[179,[130]],30]]]],[[189,[43,[183]],144],[[10,[[179,[130]],30]]]],[188,[[10,[[181,[130]],30]]]],[189,[[10,[[181,[130]],30]]]],[188,186],[[],[[10,[186,187]]]],[[],[[10,[188,187]]]],[186,[[10,[188,187]]]],[[186,50],[[10,[188,187]]]],[50,[[10,[188,187]]]],[[186,186],[[43,[16]]]],[[188,188],[[43,[16]]]],[45],[188,10],[188,[[9,[3,8]]]],[188],[[]],[[]],[[]],[188],[[188,50]],[[],47],[[],47],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[188,6],[188,[[0,[46,170]]]],[[186,50]],0,[[],[[43,[18]]]],[[],[[43,[4]]]],[6,[[43,[48]]]],0,0,0,0,0,0,0,0,0,[[52,2,190,[76,[191]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[52,58],[[10,[[194,[192,193]],19]]]],[52,[[194,[192,195]]]],0,[52,196],[[],59],[6],[6],[6],[197],[6],[6],[6],[6],[6],[[52,2],47],[6],[6],[6],[6],[[52,42],[[10,[17,19]]]],[[197,197],17],0,[[52,198,199],[[10,[17,19]]]],[[[52,[178]],20],21],[[200,20],21],[[197,20],21],[[197,20],21],[[59,20],21],[[]],[[]],[[]],[[]],[[52,200],[[10,[197,19]]]],[52,[[10,[1,19]]]],[[52,2],139],[50],[[52,200],[[10,[197,19]]]],[[52,11,[43,[201]],17],[[10,[202,19]]]],[[52,2],[[76,[127]]]],[[52,58,17],[[10,[[43,[14]],19]]]],[[52,44],[[10,[[43,[11]],19]]]],0,0,[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[101,17],[[52,101],[[10,[17,19]]]],0,[[52,17],[[10,[[9,[14]],19]]]],[52,[[10,[[9,[11]],19]]]],[52,77],[[203,[43,[203]],77],[[10,[52,19]]]],[[203,[43,[203]],77],[[10,[52,19]]]],[[52,2],[[10,[[43,[129]],19]]]],0,[[52,2],[[10,[[43,[139]],19]]]],[52,121],[[52,198,199],[[10,[17,19]]]],0,[[52,59],[[10,[19]]]],0,[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,[[],49],[[],49],[[],49],[[],49],0,[[]],[[]],[[]],[[]],[[43,77,121],[[10,[47,19]]]],0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[204,204],[205,205],[[]],[[]],[[[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[204,[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[205,[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[207,[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[18,4,101],208],[[],204],[[],205],[[],207],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[208,20],21],[[206,20],21],[[204,20],21],[[205,20],21],[[207,20],21],[[]],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[206,18],[18,207],0,[206,18],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[[]],[[]],[209,[[43,[47]]]],[6],[6],[209,47],[[],[[10,[209]]]],[6],[[52,50,17],[[10,[209,50]]]],[[209,20],21],[[]],[50,[[10,[209]]]],[[],6],[[]],0,[209,10],[209,47],[[],10],[[],10],[[],49],[[]],0,[[]],[[]],[6],[6],[6],[[210,20],21],[[]],[[211,212],[[10,[210,213]]]],[[210,121],214],[[],6],[[]],[[210,198,199,121],[[10,[31]]]],[[],10],[[],10],[[],49],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[127,214,190,[76,[191]]],[[43,[[76,[191]]]]]],0,0,[[127,121],215],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,109,121],127],[214,214],[31,31],[216,216],[[[218,[[0,[170,217,178,170]]]]],[[218,[[0,[170,217,178,170]]]]]],[190,190],[127,127],[199,199],[219,219],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[214,214],16],[[190,190],16],[[],190],[[],127],[[],199],[[],219],[6],[6],[6],[[[218,[[0,[217,178,170]]]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[43,[176]]]],[[[218,[220]]],[[43,[176]]]],[[[218,[[117,[182]]]]],[[43,[176]]]],[6],[6],[6],[6],[6],[6],[6],[6],[[214,214],17],[[31,31],17],[[216,216],17],[[190,190],17],[[219,219],17],[[127,214],[[43,[76]]]],[[214,20],21],[[31,20],21],[[31,20],21],[[216,20],21],[[[218,[[0,[178,217,178,170]]]],20],21],[[190,20],21],[[127,20],21],[[199,20],21],[[219,20],21],[221,214],[[]],[184,214],[213,31],[222,31],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[214],[121,214],[[[218,[[117,[182]]]],121],214],[[[218,[220]],121],214],[127,[[9,[214]]]],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[217,178,170]],216],[[218,[[0,[217,178,170]]]]]],[[],127],[[214,214],[[43,[16]]]],[[190,190],[[43,[16]]]],[45],[[127,214,190],[[43,[[76,[191]]]]]],0,[[198,6,199,121],[[10,[31]]]],[[[218,[220]],198,6,199,121],[[10,[31]]]],[[[218,[[117,[182]]]],198,6,199,121],[[10,[31]]]],[[198,199,121],[[10,[31]]]],[[198,199,121],[[10,[31]]]],0,[127,[[9,[76]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],47],0,0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],18],0,0,0,0,0,0,0,0,0,0,0,0,[[[194,[223,[224,[223]],195]]],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]],44,202,6],[[10,[[194,[223,[224,[223]],225]],19]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],195]],101,18],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]],44],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],44],[[10,[[194,[223,[224,[223]],225]],19]]]],[[[194,[223,[224,[223]],225]]],[[10,[[194,[223,[224,[223]],225]],19]]]],[[[194,[223,[224,[223]],225]],17],[[194,[223,[224,[223]],225]]]],[[[194,[223,192,193]],101],[[10,[[194,[223,192,193]],19]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[194,[223,[224,[223]],225]],226],[[194,[223,[224,[223]],225]]]],[195,195],[193,193],[[[194,[170]]],[[194,[170]]]],[227,227],[226,226],[[]],[[]],[[]],[[]],[[]],[[227,227],16],[[226,226],16],[[[194,[223,[224,[223]],225]],[224,[223]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],42],[[194,[223,[224,[223]],225]]]],[[],195],[[],193],[[],227],[[],226],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],195]],101],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[6],[6],[6],[6],[6],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],228],[[194,[223,[224,[223]],225]]]],[[227,227],17],[[226,226],17],[[[194,[223,[224,[223]],225]],18],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],4],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]]],[[10,[19]]]],[[195,20],21],[[193,20],21],[[[194,[178,178,178]],20],21],[[227,20],21],[[226,20],21],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[227],[226],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],229],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],227],[[194,[223,[224,[223]],225]]]],[[227,227],[[43,[16]]]],[[226,226],[[43,[16]]]],[[[194,[223,[224,[223]],225]],[156,[47,[9,[6]]]],2],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],195]],9],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]],201],[[194,[223,[224,[223]],225]]]],[[227,51]],[[]],[[]],[[]],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[[194,[223,[224,[223]],225]],[9,[44]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],230],[[194,[223,[224,[223]],225]]]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[]],[[]],[6],[6],[6],[[29,20],21],[[29,20],21],[19,29],[[]],[231,29],[[],6],[[]],[45],[[],47],[[],10],[[],10],[[],49],[51,[[10,[29]]]],[[]]],"p":[[3,"Balance"],[4,"KeychainKind"],[15,"u8"],[3,"FeeRate"],[15,"f32"],[15,"usize"],[3,"u5"],[3,"Global"],[3,"Vec"],[4,"Result"],[3,"LocalUtxo"],[3,"WeightedUtxo"],[4,"Utxo"],[3,"TransactionDetails"],[3,"BlockTime"],[4,"Ordering"],[15,"bool"],[15,"u64"],[4,"Error"],[3,"Formatter"],[6,"Result"],[3,"Error"],[4,"Error"],[4,"Error"],[4,"Error"],[4,"Error"],[4,"PsbtParseError"],[4,"EsploraError"],[4,"VerifyError"],[4,"KeyError"],[4,"SignerError"],[4,"Error"],[4,"Error"],[4,"CompactFiltersError"],[4,"Error"],[4,"PolicyError"],[4,"Error"],[4,"Error"],[4,"Error"],[4,"Error"],[3,"BlockTime"],[15,"u32"],[4,"Option"],[3,"OutPoint"],[3,"Demand"],[8,"Iterator"],[3,"String"],[3,"TxOut"],[3,"TypeId"],[15,"str"],[3,"Transaction"],[3,"Wallet"],[4,"Capability"],[3,"NoopProgress"],[3,"LogProgress"],[3,"BlockHash"],[3,"HashSet"],[3,"Txid"],[3,"SyncOptions"],[3,"RefCell"],[8,"Progress"],[3,"Box"],[4,"AnyBlockchain"],[4,"AnyBlockchainConfig"],[3,"RpcBlockchain"],[3,"CompactFiltersBlockchain"],[3,"EsploraBlockchain"],[3,"ElectrumBlockchain"],[3,"ElectrumBlockchainConfig"],[3,"EsploraBlockchainConfig"],[3,"CompactFiltersBlockchainConfig"],[3,"RpcConfig"],[3,"Mempool"],[3,"BitcoinPeerConfig"],[8,"ToSocketAddrs"],[3,"Arc"],[4,"Network"],[3,"Peer"],[8,"ToTargetAddr"],[3,"SystemTimeError"],[4,"Error"],[3,"Error"],[3,"Error"],[4,"Inventory"],[3,"VersionMessage"],[3,"Path"],[8,"AsRef"],[3,"Duration"],[4,"NetworkMessage"],[3,"Client"],[3,"Error"],[4,"Error"],[3,"Transport"],[3,"ParseIntError"],[3,"BlockingClient"],[3,"RpcBlockchainFactory"],[3,"RpcSyncParams"],[4,"Auth"],[3,"SqliteDatabase"],[3,"SyncTime"],[3,"Script"],[4,"AnyDatabase"],[4,"AnyBatch"],[3,"SledDbConfiguration"],[3,"SqliteDbConfiguration"],[4,"AnyDatabaseConfig"],[3,"Tree"],[3,"MemoryDatabase"],[4,"Descriptor"],[3,"Address"],[4,"ScriptContextEnum"],[3,"Miniscript"],[4,"Terminal"],[4,"DescriptorPublicKey"],[3,"DefiniteDescriptorKey"],[4,"ScriptContextError"],[3,"DescriptorXKey"],[4,"Wildcard"],[4,"Legacy"],[4,"Segwitv0"],[3,"Secp256k1"],[3,"PublicKey"],[4,"ConversionError"],[4,"DescriptorType"],[3,"ExtParams"],[4,"AnalysisError"],[3,"SignersContainer"],[4,"BuildSatisfaction"],[3,"Policy"],[8,"ScriptContext"],[3,"Range"],[3,"Bare"],[3,"Tr"],[3,"Sh"],[3,"Wsh"],[3,"Pkh"],[3,"Wpkh"],[3,"Tree"],[6,"ExtendedDescriptor"],[3,"Iter"],[3,"PkIter"],[4,"Policy"],[4,"LiftError"],[3,"DerivationPath"],[4,"BareCtx"],[4,"TapTree"],[3,"TxIn"],[4,"SigType"],[3,"HashMap"],[4,"Error"],[4,"Error"],[4,"PkOrF"],[4,"SatisfiableItem"],[4,"Satisfaction"],[3,"Condition"],[3,"BTreeMap"],[6,"DescriptorTemplateOut"],[8,"IntoDescriptorKey"],[3,"P2Pkh"],[3,"P2Wpkh_P2Sh"],[3,"P2Wpkh"],[8,"DerivableKey"],[3,"Bip44"],[3,"Bip44Public"],[3,"Bip49"],[3,"Bip49Public"],[3,"Bip84"],[3,"Bip84Public"],[6,"ValidNetworks"],[8,"Clone"],[3,"GeneratedKey"],[3,"SortedMultiVec"],[3,"SinglePub"],[4,"SinglePubKey"],[3,"PrivateKeyGenerateOptions"],[4,"DescriptorSecretKey"],[3,"SinglePriv"],[8,"Debug"],[4,"DescriptorKey"],[3,"ExtendedPubKey"],[4,"ExtendedKey"],[3,"ExtendedPrivKey"],[6,"KeySource"],[3,"Fingerprint"],[3,"DescriptorKeyParseError"],[4,"Language"],[4,"Error"],[3,"Mnemonic"],[6,"MnemonicWithPassphrase"],[3,"SignerOrdering"],[8,"TransactionSigner"],[6,"DefaultCoinSelectionAlgorithm"],[3,"BumpFee"],[3,"TxBuilder"],[3,"CreateTx"],[8,"Deref"],[3,"AddressInfo"],[3,"PartiallySignedTransaction"],[3,"SignOptions"],[4,"AddressIndex"],[3,"PsbtSighashType"],[3,"Input"],[8,"IntoWalletDescriptor"],[3,"LargestFirstCoinSelection"],[3,"OldestFirstCoinSelection"],[3,"CoinSelectionResult"],[3,"BranchAndBoundCoinSelection"],[4,"Excess"],[3,"FullyNodedExport"],[3,"HWISigner"],[3,"HWIDevice"],[4,"HWIChain"],[4,"Error"],[4,"SignerId"],[6,"KeyMap"],[4,"SignerContext"],[8,"Sized"],[3,"SignerWrapper"],[4,"TapLeavesOptions"],[3,"PrivateKey"],[3,"Hash"],[4,"Error"],[8,"BatchDatabase"],[8,"CoinSelectionAlgorithm"],[8,"TxBuilderContext"],[4,"ChangeSpendPolicy"],[4,"TxOrdering"],[3,"Sequence"],[4,"LockTime"],[15,"i32"],[4,"Error"],[8,"Vbytes"],[13,"InsufficientFunds"],[13,"InvalidNetwork"],[13,"FeeRateTooLow"],[13,"FeeTooLow"],[13,"Foreign"],[8,"ConfigurableBlockchain"],[8,"BlockchainFactory"],[8,"Blockchain"],[8,"GetBlockHash"],[8,"GetHeight"],[8,"GetTx"],[8,"WalletSync"],[13,"Cookie"],[13,"UserPass"],[8,"ConfigurableDatabase"],[8,"Database"],[8,"BatchOperations"],[8,"ExtractPolicy"],[13,"PsbtTimelocks"],[13,"Complete"],[13,"Partial"],[13,"PartialComplete"],[13,"Sha256Preimage"],[13,"Hash256Preimage"],[13,"Ripemd160Preimage"],[13,"Hash160Preimage"],[13,"Thresh"],[13,"Multisig"],[13,"AbsoluteTimelock"],[13,"RelativeTimelock"],[8,"DescriptorTemplate"],[8,"GeneratableKey"],[8,"ExtScriptContext"],[8,"GeneratableDefaultOptions"],[4,"WordCount"],[8,"PsbtUtils"],[8,"IsDust"],[13,"Change"],[13,"NoChange"],[8,"SignerCommon"],[8,"InputSigner"],[13,"Tap"]]}\ +"bdk":{"doc":"A modern, lightweight, descriptor-based wallet library …","t":[3,13,3,13,13,13,13,6,13,13,13,4,13,13,3,13,13,13,13,13,2,13,13,13,13,13,13,13,13,13,13,13,4,13,3,13,13,13,13,13,13,13,13,13,13,13,13,13,13,2,13,13,13,2,13,3,13,2,13,4,8,13,2,3,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,14,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,14,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,0,11,11,12,11,11,11,11,0,12,12,12,11,11,11,11,11,2,11,11,2,12,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,11,11,11,11,11,11,11,11,11,12,12,10,5,11,11,11,11,11,11,11,11,11,0,11,12,12,12,12,12,12,12,12,13,2,2,8,8,4,2,16,8,2,2,3,13,13,8,8,8,16,3,3,8,6,2,2,8,8,0,11,11,11,11,11,11,10,10,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,0,11,0,10,11,11,11,11,11,11,10,10,10,11,10,10,11,11,11,11,11,11,11,5,5,5,0,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,10,11,4,4,13,13,13,13,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,3,13,3,3,4,13,13,13,13,13,13,13,13,3,13,13,13,3,13,13,13,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,12,11,11,11,11,11,11,11,12,12,11,11,11,13,3,3,4,13,13,13,13,13,13,13,13,13,13,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,13,13,3,3,3,3,13,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,12,12,11,12,12,12,2,2,16,8,8,16,8,8,2,3,3,0,10,11,12,11,11,11,11,10,11,11,11,10,11,12,10,11,10,11,10,11,10,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,10,11,10,11,10,11,10,11,10,11,10,11,10,11,10,11,11,11,11,11,10,11,10,11,10,11,10,11,0,11,12,11,10,11,10,11,10,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,4,4,4,13,13,13,13,13,13,3,13,13,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,6,4,2,4,3,6,8,13,6,8,16,6,4,3,13,13,2,8,4,13,13,6,13,13,4,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,2,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,11,12,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,10,11,11,0,11,11,11,11,11,11,11,11,11,11,11,10,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,12,5,5,5,5,13,13,4,13,13,13,13,13,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,4,13,3,6,13,13,6,13,13,13,13,13,13,13,13,13,13,13,4,3,4,13,13,13,13,13,4,4,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,3,3,3,3,3,3,8,6,3,3,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,8,4,4,4,16,16,8,4,13,8,8,3,8,13,13,13,16,4,6,13,13,13,16,13,3,13,8,4,13,13,13,3,3,4,3,13,6,13,13,13,5,10,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,11,5,11,10,11,11,5,10,11,12,12,11,11,11,11,11,11,10,12,11,11,11,11,10,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,4,13,4,3,6,13,4,13,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,10,10,10,4,3,8,13,13,13,13,3,3,11,12,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,0,12,11,11,11,11,11,11,11,11,10,11,12,11,11,11,11,11,11,12,11,11,11,0,11,0,11,11,11,11,11,11,11,11,11,0,11,11,11,11,0,11,11,11,11,5,3,13,8,3,6,4,3,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,3,6,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,3,8,4,4,4,3,3,3,13,4,8,13,11,12,12,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,10,11,11,10,11,12,11,12,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,5,13,3,13,13,4,3,13,13,3,8,4,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,13,13,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11],"n":["Balance","Bip32","BlockTime","BnBNoExactMatch","BnBTotalTriesExceeded","ChecksumMismatch","CompactFilters","ConfirmationTime","Descriptor","Electrum","Encode","Error","Esplora","External","FeeRate","FeeRateTooLow","FeeRateUnavailable","FeeTooLow","Foreign","Generic","HdKeyPaths","Hex","InsufficientFunds","Internal","InvalidNetwork","InvalidOutpoint","InvalidPolicyPathError","InvalidProgressValue","InvalidU32Bytes","IrreplaceableTransaction","Json","Key","KeychainKind","Local","LocalUtxo","Miniscript","MiniscriptPsbt","MissingCachedScripts","MissingKeyOrigin","NoRecipients","NoUtxosSelected","OutputBelowDustLimit","ProgressUpdateError","Psbt","PsbtParse","Rpc","Rusqlite","ScriptDoesntHaveAddressForm","Secp256k1","SignOptions","Signer","Sled","SpendingPolicyRequired","SyncOptions","TransactionConfirmed","TransactionDetails","TransactionNotFound","TxBuilder","UnknownUtxo","Utxo","Vbytes","Verification","Wallet","WeightedUtxo","add","as_byte","as_ref","as_sat_per_vb","base32_len","blockchain","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_base32","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","confirmation_time","confirmed","database","default","default","default","default_min_relay_fee","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","descriptor","descriptor","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","eq","eq","fee","fee_vb","fee_wu","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fragment","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_btc_per_kvb","from_sat_per_kvb","from_sat_per_kwu","from_sat_per_vb","from_vb","from_wu","get_hash","get_hash","get_spendable","get_total","hash","hash","height","immature","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","is_spent","keychain","keys","new","outpoint","outpoint","partial_cmp","partial_cmp","partial_cmp","provide","psbt","received","satisfaction_weight","sent","serialize","serialize","serialize","serialize","serialize","signer","sub","sum","template","timestamp","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","transaction","trusted_pending","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","txid","txout","txout","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","untrusted_pending","utxo","vbytes","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wallet","write_base32","available","found","needed","requested","required","required","outpoint","psbt_input","AccurateFees","AnyBlockchain","AnyBlockchainConfig","Blockchain","BlockchainFactory","Capability","CompactFiltersBlockchain","Config","ConfigurableBlockchain","ElectrumBlockchain","ElectrumBlockchainConfig","EsploraBlockchain","FullHistory","GetAnyTx","GetBlockHash","GetHeight","GetTx","Inner","LogProgress","NoopProgress","Progress","ProgressData","RpcBlockchain","RpcConfig","StatelessBlockchain","WalletSync","any","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","broadcast","build","build_for_wallet","clone","clone","clone","clone_into","clone_into","clone_into","compact_filters","default","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","electrum","eq","esplora","estimate_fee","fmt","fmt","fmt","from","from","from","from_config","get_block_hash","get_capabilities","get_hash","get_height","get_tx","hash","init","init","init","into","into","into","log_progress","noop_progress","progress","rpc","sync_wallet","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","update","update","update","vzip","vzip","vzip","wallet_setup","wallet_sync","AnyBlockchain","AnyBlockchainConfig","CompactFilters","CompactFilters","Electrum","Electrum","Esplora","Esplora","Rpc","Rpc","borrow","borrow","borrow_mut","borrow_mut","broadcast","clone","clone_into","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","eq","estimate_fee","fmt","from","from","from","from","from","from","from","from","from","from","from_config","get_block_hash","get_capabilities","get_height","get_tx","init","init","into","into","serialize","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","wallet_setup","wallet_sync","Bip158","BitcoinPeerConfig","BlockHashNotFound","CompactFiltersBlockchain","CompactFiltersBlockchainConfig","CompactFiltersError","DataCorruption","Db","Global","InvalidFilter","InvalidFilterHeader","InvalidHeaders","InvalidResponse","Io","Mempool","MissingBlock","NoPeers","NotConnected","Peer","PeerBloomDisabled","Time","Timeout","add_tx","address","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broadcast","clone","clone","clone_into","clone_into","connect","connect_proxy","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","drop","drop","drop","drop","drop","drop","eq","eq","estimate_fee","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from_config","get_block_hash","get_capabilities","get_height","get_mempool","get_network","get_tx","get_tx","get_version","has_tx","init","init","init","init","init","init","into","into","into","into","into","into","is_connected","iter_txs","network","new","new","peers","provide","recv","send","serialize","serialize","skip_blocks","socks5","socks5_credentials","storage_dir","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","wallet_setup","ElectrumBlockchain","ElectrumBlockchainConfig","borrow","borrow","borrow_mut","borrow_mut","broadcast","clone","clone_into","deref","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","eq","estimate_fee","fmt","from","from","from","from_config","get_block_hash","get_capabilities","get_height","get_tx","init","init","into","into","retry","serialize","socks5","stop_gap","timeout","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","url","validate_domain","vzip","vzip","wallet_setup","BitcoinEncoding","EsploraBlockchain","EsploraBlockchainConfig","EsploraError","HeaderHashNotFound","HeaderHeightNotFound","Hex","HttpResponse","Io","NoHeader","Parsing","TransactionNotFound","Ureq","UreqTransport","base_url","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","broadcast","clone","clone_into","concurrency","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","eq","estimate_fee","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_client","from_config","get_block_hash","get_capabilities","get_height","get_tx","init","init","init","into","into","into","new","new","provide","proxy","serialize","stop_gap","timeout","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","wallet_setup","with_concurrency","Auth","Cookie","None","RpcBlockchain","RpcBlockchainFactory","RpcConfig","RpcSyncParams","UserPass","auth","auth","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broadcast","build","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","default","default_skip_blocks","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","eq","eq","estimate_fee","fmt","fmt","fmt","fmt","fmt","force_start_time","from","from","from","from","from","from_config","get_block_hash","get_capabilities","get_hash","get_height","get_tx","hash","init","init","init","init","init","into","into","into","into","into","network","network","partial_cmp","poll_rate_sec","serialize","serialize","serialize","start_script_count","start_time","sync_params","sync_params","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","url","url","vzip","vzip","vzip","vzip","vzip","wallet_name","wallet_name_prefix","wallet_setup","file","password","username","AnyDatabase","AnyDatabaseConfig","Batch","BatchDatabase","BatchOperations","Config","ConfigurableDatabase","Database","MemoryDatabase","SqliteDatabase","SyncTime","any","begin_batch","begin_batch","block_time","borrow","borrow","borrow_mut","borrow_mut","check_descriptor_checksum","check_descriptor_checksum","clone","clone_into","commit_batch","commit_batch","connection","del_last_index","del_last_index","del_path_from_script_pubkey","del_path_from_script_pubkey","del_raw_tx","del_raw_tx","del_script_pubkey_from_path","del_script_pubkey_from_path","del_sync_time","del_sync_time","del_tx","del_tx","del_utxo","del_utxo","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","fmt","fmt","from","from","from_config","from_config","get_last_index","get_last_index","get_path_from_script_pubkey","get_path_from_script_pubkey","get_raw_tx","get_raw_tx","get_script_pubkey_from_path","get_script_pubkey_from_path","get_sync_time","get_sync_time","get_tx","get_tx","get_utxo","get_utxo","increment_last_index","increment_last_index","init","init","into","into","iter_raw_txs","iter_raw_txs","iter_script_pubkeys","iter_script_pubkeys","iter_txs","iter_txs","iter_utxos","iter_utxos","memory","new","path","serialize","set_last_index","set_last_index","set_raw_tx","set_raw_tx","set_script_pubkey","set_script_pubkey","set_sync_time","set_sync_time","set_tx","set_tx","set_utxo","set_utxo","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","AnyBatch","AnyDatabase","AnyDatabaseConfig","Memory","Memory","Memory","Sled","Sled","Sled","SledDbConfiguration","Sqlite","Sqlite","Sqlite","SqliteDbConfiguration","begin_batch","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_descriptor_checksum","commit_batch","del_last_index","del_last_index","del_path_from_script_pubkey","del_path_from_script_pubkey","del_raw_tx","del_raw_tx","del_script_pubkey_from_path","del_script_pubkey_from_path","del_sync_time","del_sync_time","del_tx","del_tx","del_utxo","del_utxo","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_config","get_last_index","get_path_from_script_pubkey","get_raw_tx","get_script_pubkey_from_path","get_sync_time","get_tx","get_utxo","increment_last_index","init","init","init","init","init","into","into","into","into","into","iter_raw_txs","iter_script_pubkeys","iter_txs","iter_utxos","path","path","serialize","serialize","serialize","set_last_index","set_last_index","set_raw_tx","set_raw_tx","set_script_pubkey","set_script_pubkey","set_sync_time","set_sync_time","set_tx","set_tx","set_utxo","set_utxo","tree_name","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","MemoryDatabase","begin_batch","borrow","borrow_mut","check_descriptor_checksum","commit_batch","default","del_last_index","del_path_from_script_pubkey","del_raw_tx","del_script_pubkey_from_path","del_sync_time","del_tx","del_utxo","deref","deref_mut","drop","fmt","from","from_config","get_last_index","get_path_from_script_pubkey","get_raw_tx","get_script_pubkey_from_path","get_sync_time","get_tx","get_utxo","increment_last_index","init","into","iter_raw_txs","iter_script_pubkeys","iter_txs","iter_utxos","new","set_last_index","set_raw_tx","set_script_pubkey","set_sync_time","set_tx","set_utxo","try_from","try_into","type_id","vzip","Bare","DerivedDescriptor","Descriptor","DescriptorError","DescriptorPublicKey","DescriptorXKey","ExtendedDescriptor","ExtractPolicy","Hardened","HdKeyPaths","IntoWalletDescriptor","Key","KeyMap","Legacy","Miniscript","None","Pkh","Policy","ScriptContext","Segwitv0","Sh","Single","TapKeyOrigins","Tr","Unhardened","Wildcard","Wpkh","Wsh","XPub","address","as_enum","as_enum","as_inner","at_derivation_index","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","branches","calc_checksum","check_global_consensus_validity","check_global_consensus_validity","check_global_consensus_validity","check_global_policy_validity","check_global_policy_validity","check_global_validity","check_local_consensus_validity","check_local_consensus_validity","check_local_consensus_validity","check_local_policy_validity","check_local_policy_validity","check_local_policy_validity","check_local_validity","check_terminal_non_malleable","check_terminal_non_malleable","check_terminal_non_malleable","check_witness","check_witness","check_witness","checksum","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","contains_raw_pkh","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","derivation_path","derive","derived_descriptor","derived_descriptor","desc_type","deserialize","deserialize","drop","drop","drop","drop","drop","drop","encode","eq","eq","eq","eq","eq","eq","error","explicit_script","ext","ext_check","extract_policy","extract_policy","extract_policy","find_derivation_index_for_spk","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","for_each_key","for_each_key","from","from","from","from","from","from","from","from","from","from","from","from","from_ast","from_str","from_str","from_str_ext","from_str_insane","from_tree","from_tree","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_nth_child","get_nth_pk","get_satisfaction","get_satisfaction_mall","has_mixed_timelocks","has_repeated_keys","has_wildcard","hash","hash","hash","hash","hash","hash","init","init","init","init","init","init","into","into","into","into","into","into","into_inner","into_wallet_descriptor","into_wallet_descriptor","is_deriveable","is_non_malleable","iter","iter_pk","lift","lift","lift_check","matches","max_satisfaction_size","max_satisfaction_size","max_satisfaction_size","max_satisfaction_size","max_satisfaction_weight","max_satisfaction_witness_elements","name_str","name_str","name_str","new_bare","new_pk","new_pkh","new_sh","new_sh_sortedmulti","new_sh_with_wpkh","new_sh_with_wsh","new_sh_wpkh","new_sh_wsh","new_sh_wsh_sortedmulti","new_tr","new_wpkh","new_wsh","new_wsh_sortedmulti","node","origin","other_top_level_checks","parse","parse_descriptor","parse_insane","parse_with_ext","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pk_len","pk_len","pk_len","policy","requires_sig","sanity_check","sanity_check","satisfy","satisfy","satisfy_malleable","script_code","script_pubkey","script_size","serialize","serialize","sig_type","sig_type","sig_type","template","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string_with_secret","top_level_checks","top_level_type_check","translate_pk","translate_pk","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","ty","type_id","type_id","type_id","type_id","type_id","type_id","unsigned_script_sig","vzip","vzip","vzip","vzip","vzip","vzip","wildcard","within_resource_limits","xkey","calc_checksum","calc_checksum_bytes","get_checksum","get_checksum_bytes","Base58","Bip32","Error","HardenedDerivationXpub","Hex","InvalidDescriptorCharacter","InvalidDescriptorChecksum","InvalidHdKeyPath","Key","Miniscript","Pk","Policy","borrow","borrow_mut","deref","deref_mut","drop","fmt","fmt","from","from","from","from","from","from","from","from","init","into","provide","to_string","try_from","try_into","type_id","vzip","AbsoluteTimelock","AddOnLeaf","AddOnPartialComplete","BuildSatisfaction","Complete","Condition","ConditionMap","EcdsaSignature","Fingerprint","FoldedConditionMap","Hash160Preimage","Hash256Preimage","IncompatibleConditions","IndexOutOfRange","MixedTimelockUnits","Multisig","None","None","NotEnoughItemsSelected","Partial","PartialComplete","PkOrF","Policy","PolicyError","Psbt","PsbtTimelocks","Pubkey","RelativeTimelock","Ripemd160Preimage","Satisfaction","SatisfiableItem","SchnorrSignature","Sha256Preimage","Thresh","XOnlyPubkey","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","contribution","csv","default","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","get_condition","get_hash","get_hash","hash","hash","id","id","init","init","init","init","init","init","init","into","into","into","into","into","into","into","is_leaf","is_leaf","is_null","item","partial_cmp","provide","requires_path","satisfaction","serialize","serialize","serialize","serialize","serialize","timelock","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","current_height","input_max_height","psbt","condition","conditions","conditions","items","items","m","m","n","n","sorted","sorted","hash","hash","hash","hash","items","keys","threshold","threshold","value","value","Bip44","Bip44Public","Bip49","Bip49Public","Bip84","Bip84Public","DescriptorTemplate","DescriptorTemplateOut","P2Pkh","P2Wpkh","P2Wpkh_P2Sh","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build","build","build","build","build","build","build","build","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","drop","drop","drop","drop","from","from","from","from","from","from","from","from","from","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","into_wallet_descriptor","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","Bip32","DerivableKey","DescriptorKey","DescriptorPublicKey","DescriptorSecretKey","Entropy","Error","ExtScriptContext","ExtendedKey","FullKey","GeneratableDefaultOptions","GeneratableKey","GeneratedKey","IntoDescriptorKey","InvalidChecksum","InvalidNetwork","InvalidScriptContext","Key","KeyError","KeyMap","Legacy","Message","Miniscript","Options","Private","PrivateKeyGenerateOptions","Public","ScriptContext","ScriptContextEnum","Segwitv0","Single","Single","SinglePriv","SinglePub","SinglePubKey","SortedMultiVec","Tap","ValidNetworks","XOnly","XPrv","XPub","any_network","as_enum","at_derivation_index","bip39","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_global_consensus_validity","check_global_policy_validity","check_global_validity","check_local_consensus_validity","check_local_policy_validity","check_local_validity","check_terminal_non_malleable","check_witness","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","compressed","default","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","derive","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","encode","eq","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","for_each_key","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_public","from_secret","from_str","from_str","from_tree","full_derivation_path","generate","generate_default","generate_with_entropy","generate_with_entropy_default","get_hash","get_hash","get_hash","get_hash","has_secret","has_wildcard","hash","hash","hash","hash","init","init","init","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","into","into","into","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_descriptor_key","into_extended_key","into_extended_key","into_extended_key","into_key","into_xprv","into_xpub","is_deriveable","is_legacy","is_legacy","is_segwit_v0","is_segwit_v0","is_taproot","is_taproot","is_uncompressed","is_x_only_key","k","key","key","lift","mainnet_network","master_fingerprint","max_satisfaction_size","max_satisfaction_size","max_satisfaction_witness_elements","merge_networks","name_str","new","origin","origin","other_top_level_checks","override_valid_networks","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pk_len","pks","provide","sanity_check","satisfy","script_size","sig_type","sorted_node","test_networks","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_public","to_string","to_string","to_string","to_string","top_level_checks","top_level_type_check","translate_pk","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AmbiguousLanguages","BadEntropyBitCount","BadWordCount","English","Error","InvalidChecksum","Language","Mnemonic","MnemonicWithPassphrase","UnknownWord","WordCount","Words12","Words15","Words18","Words21","Words24","all","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","drop","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_entropy","from_entropy_in","from_str","generate_in_with","generate_with_entropy","get_hash","get_hash","hash","hash","init","init","init","init","into","into","into","into","into_descriptor_key","into_descriptor_key","into_extended_key","into_extended_key","language","language_of","parse","parse_in","parse_in_normalized","parse_normalized","partial_cmp","partial_cmp","provide","serialize","to_entropy","to_entropy_array","to_owned","to_owned","to_owned","to_seed","to_seed_normalized","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","word_count","word_iter","words_by_prefix","PsbtUtils","fee_amount","fee_rate","get_utxo_for","AddressIndex","AddressInfo","IsDust","LastUnused","New","Peek","Reset","SyncOptions","Wallet","add_signer","address","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_fee_bump","build_tx","coin_selection","database","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","descriptor_checksum","drop","drop","drop","drop","ensure_addresses_cached","eq","export","finalize_psbt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","get_address","get_balance","get_descriptor_for_keychain","get_funded_wallet","get_internal_address","get_psbt_input","get_signers","get_tx","get_utxo","hardwaresigner","index","init","init","init","init","into","into","into","into","is_dust","is_mine","keychain","list_transactions","list_unspent","network","new","new_offline","policies","progress","public_descriptor","secp_ctx","sign","signer","sync","time","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tx_builder","type_id","type_id","type_id","type_id","verify","vzip","vzip","vzip","vzip","wallet_name_from_descriptor","BranchAndBoundCoinSelection","Change","CoinSelectionAlgorithm","CoinSelectionResult","DefaultCoinSelectionAlgorithm","Excess","LargestFirstCoinSelection","NoChange","OldestFirstCoinSelection","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","coin_select","coin_select","coin_select","coin_select","decide_change","default","default","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","excess","fee_amount","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","init","init","init","init","init","into","into","into","into","into","local_selected_amount","new","selected","selected_amount","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","amount","change_fee","dust_threshold","fee","remaining_amount","FullyNodedExport","WalletExport","blockheight","borrow","borrow_mut","change_descriptor","deref","deref_mut","descriptor","deserialize","drop","export_wallet","fmt","from","from_str","init","into","label","serialize","to_string","try_from","try_into","type_id","vzip","HWISigner","borrow","borrow_mut","deref","deref_mut","drop","fmt","from","from_device","id","init","into","sign_transaction","try_from","try_into","type_id","vzip","All","Dummy","Exclude","Fingerprint","HWIError","Include","InputIndexOutOfRange","InputSigner","InvalidKey","InvalidNonWitnessUtxo","InvalidSighash","Legacy","MissingHdKeypath","MissingKey","MissingNonWitnessUtxo","MissingWitnessScript","MissingWitnessUtxo","NonStandardSighash","None","PkHash","Segwitv0","SighashError","SignOptions","SignerCommon","SignerContext","SignerError","SignerId","SignerOrdering","SignerWrapper","SignersContainer","Tap","TapLeavesOptions","TransactionSigner","UserCanceled","add_external","allow_all_sighashes","allow_grinding","as_key_map","assume_height","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","default","default","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","descriptor_secret_key","descriptor_secret_key","descriptor_secret_key","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","find","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","get_hash","hash","id","id","id","ids","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","new","new","partial_cmp","partial_cmp","provide","remove","remove_partial_sigs","sign_input","sign_input","sign_input","sign_transaction","sign_transaction","sign_with_tap_internal_key","signers","tap_leaves_options","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","trust_witness_utxo","try_finalize","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","is_internal_key","get_timestamp","Bip69Lexicographic","BumpFee","ChangeAllowed","ChangeForbidden","ChangeSpendPolicy","CreateTx","OnlyChange","Shuffle","TxBuilder","TxBuilderContext","TxOrdering","Untouched","add_data","add_foreign_utxo","add_global_xpubs","add_recipient","add_unspendable","add_utxo","add_utxos","allow_dust","allow_shrinking","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","change_policy","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","coin_selection","current_height","default","default","default","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","do_not_spend_change","drain_to","drain_wallet","drop","drop","drop","drop","drop","enable_rbf","enable_rbf_with_sequence","eq","eq","fee_absolute","fee_rate","finish","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_hash","get_hash","hash","hash","include_output_redeem_witness_script","init","init","init","init","init","into","into","into","into","into","manually_selected_only","nlocktime","only_spend_change","only_witness_utxo","ordering","partial_cmp","partial_cmp","policy_path","set_recipients","sighash","sort_tx","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unspendable","version","vzip","vzip","vzip","vzip","vzip","Consensus","Global","InvalidInput","MissingInputTx","VerifyError","borrow","borrow_mut","deref","deref_mut","drop","fmt","fmt","from","from","from","init","into","provide","to_string","try_from","try_into","type_id","verify_tx","vzip"],"q":["bdk","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::Error","","","","","","bdk::Utxo","","bdk::blockchain","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::any","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::compact_filters","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::electrum","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::esplora","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::rpc","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::blockchain::rpc::Auth","","","bdk::database","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::database::any","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::database::memory","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor::checksum","","","","bdk::descriptor::error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor::policy","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::descriptor::policy::BuildSatisfaction","","","bdk::descriptor::policy::Satisfaction","","","","","","","","","","","bdk::descriptor::policy::SatisfiableItem","","","","","","","","","","bdk::descriptor::template","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::keys","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::keys::bip39","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::psbt","","","","bdk::wallet","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::coin_selection","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::coin_selection::Excess","","","","","bdk::wallet::export","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::hardwaresigner","","","","","","","","","","","","","","","","","bdk::wallet::signer","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::signer::SignerContext","bdk::wallet::time","bdk::wallet::tx_builder","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bdk::wallet::verify","","","","","","","","","","","","","","","","","","","","","","",""],"d":["Balance differentiated in various categories","BIP32 error","Block height and timestamp of a block","Branch and bound coin selection tries to avoid needing a …","Branch and bound coin selection possible attempts with …","Descriptor checksum mismatch","Compact filters client error)","DEPRECATED: Confirmation time of a transaction","Error related to the parsing and usage of descriptors","Electrum client error","Encoding error","Errors that can be thrown by the Wallet","Esplora client error","External","Fee rate","When bumping a tx the fee rate requested is lower than …","Node doesn’t have data to estimate a fee rate","When bumping a tx the absolute fee requested is lower than …","A UTXO owned by another wallet.","Generic error","","Hex decoding error","Wallet’s UTXO set is not enough to cover recipient’s …","Internal, usually used for change outputs","Invalid network","Requested outpoint doesn’t exist in the tx (vout greater …","Error while extracting and manipulating policies","Progress value must be between 0.0 (included) and 100.0 …","Wrong number of bytes found when trying to convert to u32","Trying to replace a tx that has a sequence >= 0xFFFFFFFE","Error serializing or deserializing JSON data","Error while working with keys","Types of keychains","A UTXO owned by the local wallet.","An unspent output owned by a Wallet.","Miniscript error","Miniscript PSBT error","crate::blockchain::WalletSync sync attempt failed due to …","In order to use the TxBuilder::add_global_xpubs option …","Cannot build a tx without recipients","manually_selected_only option is selected but no utxo has …","Output created is under the dust limit, 546 satoshis","Progress update error (maybe the channel has been closed)","Partially signed bitcoin transaction error","Partially signed bitcoin transaction parse error","Rpc client error","Rusqlite client error","This error is thrown when trying to convert Bare and …","A secp256k1 error","","Signing error","Sled database error","Spending policy is not compatible with this KeychainKind","","Happens when trying to bump a transaction that is already …","A wallet transaction","Thrown when a tx is not found in the internal database","","Happens when trying to spend an UTXO that is not in the …","An unspent transaction output (UTXO).","Trait implemented by types that can be used to measure …","Transaction verification error","","A Utxo with its satisfaction_weight.","","Return KeychainKind as a byte","","Return the value as satoshi/vbyte","","Blockchain backends","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If the transaction is confirmed, contains height and …","Confirmed and immediately spendable balance","Database types","","","","Create a new FeeRate with the default min relay fee value","","","","","","","","","","","","","","","","","","","Descriptors","Macro to write full descriptors with code","","","","","","","","","","","","","","","","","","","","","","","Fee value (sats) if confirmed. The availability of the fee …","Calculate absolute fee in Satoshis using size in virtual …","Calculate absolute fee in Satoshis using size in weight …","","","","","","","","","","","","Macro to write descriptor fragments with code","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Create a new instance of FeeRate given a float fee rate in …","Create a new instance of FeeRate given a float fee rate in …","Create a new instance of FeeRate given a float fee rate in …","Create a new instance of FeeRate given a float fee rate in …","Calculate fee rate from fee and vbytes.","Calculate fee rate from fee and weight units (wu).","","","Get sum of trusted_pending and confirmed coins","Get the whole balance visible to the wallet","","","confirmation block height","All coinbase outputs not yet matured","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Whether this UTXO is spent or not","Type of keychain","Key formats","Returns Some BlockTime if both height and timestamp are …","Get the location of the UTXO","Reference to a transaction output","","","","","Additional functions on the rust-bitcoin …","Received value (sats) Sum of owned outputs of this …","The weight of the witness data and scriptSig expressed in …","Sent value (sats) Sum of owned inputs of this transaction.","","","","","","","","","","confirmation block timestamp","","","","","","","","","","","Optional transaction","Unconfirmed UTXOs generated by a wallet tx","","","","","","","","","","","","","","","","","","","Transaction id","Get the TxOut of the UTXO","Transaction output","","","","","","","","","","Unconfirmed UTXOs received from an external wallet","The UTXO","Convert weight units to virtual bytes.","Get the version of BDK at runtime","","","","","","","","","","Wallet","","Sats available for spending","found network, for example the network of the bitcoin node","Sats needed for some transaction","requested network, for example what is given as bdk-cli …","Required fee rate (satoshi/vbyte)","Required fee absolute value (satoshi)","The location of the output.","The information about the input we require to add it to a …","Can compute accurate fees for the transactions found …","","","Trait that defines the actions that must be supported by a …","Trait for a factory of blockchains that share the …","Capabilities that can be supported by a Blockchain backend","","Type that contains the configuration","Trait for Blockchain types that can be created given a …","","","Structure that implements the logic to sync with Esplora","Can recover the full history of a wallet and not only the …","Can fetch any historical transaction given its txid","Trait for getting block hash by block height","Trait for getting the current height of the blockchain.","Trait for getting a transaction by txid","The type returned when building a blockchain from this …","Type that implements Progress and logs at level INFO every …","Type that implements Progress and drops every update …","Trait for types that can receive and process progress …","Data sent with a progress update over a channel","","","Trait for blockchains that don’t contain any state","Trait for blockchains that can sync by updating the …","Runtime-checked blockchain types","","","","","","","Broadcast a transaction","Build a new blockchain for the given descriptor wallet_name","Build a new blockchain for a given wallet","","","","","","","Compact Filters","","","","","","","","","","","","Electrum","","Esplora","Estimate the fee rate required to confirm a transaction in …","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Create a new instance given a configuration","fetch block hash given its height","Return the set of Capability supported by this backend","","Return the current height","Fetch a transaction given its txid","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Create a new instance of LogProgress","Create a new instance of NoopProgress","Shortcut to create a channel (pair of Sender and Receiver) …","Rpc Blockchain","Use BlockchainFactory::build_for_wallet to get a …","","","","","","","","","","","","","Send a new progress update","","","","","","Setup the backend and populate the internal database for …","If not overridden, it defaults to calling …","Type that can contain any of the Blockchain types defined …","Type that can contain any of the blockchain configurations …","Compact filters client","Compact filters client","Electrum client","Electrum client","Esplora client","Esplora client","RPC client","RPC client configuration","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","Invalid BIP158 filter","Data to connect to a Bitcoin P2P peer","Block hash at specified height not found","Structure implementing the required blockchain traits","Configuration for a CompactFiltersBlockchain","An error that can occur during sync with a …","The data stored in the block filters storage are corrupted","Internal database error","Wrapper for crate::error::Error","The compact filter returned is invalid","The compact filter headers returned are invalid","The headers returned are invalid","A peer sent an invalid or unexpected response","Internal I/O error","Container for unconfirmed, but valid Bitcoin transactions","The peer is missing a block in the valid chain","No peers have been specified","A peer is not connected","A Bitcoin peer","The peer doesn’t advertise the BLOOM service flag","Internal system time error","A peer took too long to reply to one of our messages","Add a transaction to the mempool","Peer address such as 127.0.0.1:18333","","","","","","","","","","","","","","","","","","Connect to a peer over a plaintext TCP connection","Connect to a peer through a SOCKS5 proxy, optionally by …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","Return the mempool used by this peer","Return the Bitcoin Network in use","Look-up a transaction in the mempool given an Inventory …","","Return the VersionMessage sent by the peer","Return whether or not the mempool contains a transaction …","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Return whether or not the peer is still connected","Return the list of transactions contained in the mempool","Network used","Create a new empty mempool","Construct a new instance given a list of peers, a path to …","List of peers to try to connect to for asking headers and …","","Waits for a specific incoming Bitcoin message, optionally …","Send a raw Bitcoin message to the peer","","","Optionally skip initial skip_blocks blocks (default: 0)","Optional socks5 proxy","Optional socks5 proxy credentials","Storage dir to save partially downloaded headers and full …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Wrapper over an Electrum Client that implements the …","Configuration for an ElectrumBlockchain","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","Request retry count","","URL of the socks5 proxy server or a Tor service","Stop searching addresses for transactions after finding an …","Request timeout (seconds)","","","","","","","","URL of the Electrum server (such as ElectrumX, Esplora, …","Validate the domain when using SSL","","","","Invalid Bitcoin data returned","Structure that implements the logic to sync with Esplora","Configuration for an EsploraBlockchain","Errors that can happen during a sync with Esplora","Header hash not found","Header height not found","Invalid Hex data returned","HTTP response error","IO error during ureq response read","No header found in ureq response","Invalid number returned","Transaction not found","Error during ureq HTTP request","Transport error during the ureq HTTP call","Base URL of the esplora service","","","","","","","","","","Number of parallel requests sent to the esplora service …","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Build a new instance given a client","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Create a new instance of the client from a base URL and …","create a config with default values given the base url and …","","Optional URL of the proxy to use to make requests to the …","","Stop searching addresses for transactions after finding an …","Socket timeout.","","","","","","","","","","","","","","","","Set the number of parallel requests the client can make.","This struct is equivalent to bitcoincore_rpc::Auth but it …","Authentication with a cookie file","None authentication","The main struct for RPC backend implementing the …","Factory of RpcBlockchain instances, implements …","RpcBlockchain configuration options","Sync parameters for Bitcoin Core RPC.","Authentication with username and password, usually …","The bitcoin node authentication mechanism","The bitcoin node authentication mechanism","","","","","","","","","","","","","","","","","","","","","","","Default number of blocks to skip which will be inherited …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Forces every sync to use start_time as import timestamp.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns RpcBlockchain backend creating an RPC client to a …","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","The network we are using (it will be checked the bitcoin …","The network we are using (it will be checked the bitcoin …","","RPC poll rate (in seconds) to get state updates.","","","","The minimum number of scripts to scan for on initial sync.","Time in unix seconds in which initial sync will start …","Sync parameters","Sync parameters","","","","","","","","","","","","","","","","","","","","The bitcoin node url","The bitcoin node url","","","","","","The wallet name in the bitcoin node, consider using …","The optional prefix used to build the full wallet name for …","","Cookie file","Password","Username","","","Container for the operations","Trait for a database that supports batch operations","Trait for operations that can be batched","Type that contains the configuration","Trait for Database types that can be created given a …","Trait for reading data from a database","","Sqlite database stored on filesystem","Blockchain state at the time of syncing","Runtime-checked database types","Create a new batch container","","Block timestamp and height at the time of sync","","","","","Read and checks the descriptor checksum for a given …","","","","Consume and apply a batch of operations","","A rusqlite connection object to the sqlite database","Delete the last derivation index for a keychain.","","Delete the data related to a specific script_pubkey, …","","Delete a raw transaction given its Txid","","Delete a script_pubkey given the keychain and its child …","","Reset the sync time to None","","Delete the metadata of a transaction and optionally the …","","Delete a LocalUtxo given its OutPoint","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Create a new instance given a configuration","","Return the last derivation index for a keychain.","","Fetch the keychain and child number of a given …","","Fetch a raw transaction given its Txid","","Fetch a script_pubkey given the child number of a keychain.","","Return the sync time, if present","","Fetch the transaction metadata and optionally also the raw …","","Fetch a LocalUtxo given its OutPoint","","Increment the last derivation index for a keychain and …","","","","Calls U::from(self).","Calls U::from(self).","Return the list of raw transactions","","Return the list of script_pubkeys","","Return the list of transactions metadata","","Return the list of LocalUtxos","","In-memory ephemeral database","Instantiate a new SqliteDatabase instance by creating a …","Path on the local filesystem to store the sqlite file","","Store the last derivation index for a given keychain.","","Store a raw transaction","","Store a script_pubkey along with its keychain and child …","","Store the sync time","","Store the metadata of a transaction","","Store a LocalUtxo","","","","","","","","","","","Type that contains any of the BatchDatabase::Batch types …","Type that can contain any of the Database types defined by …","Type that can contain any of the database configurations …","In-memory ephemeral database","In-memory ephemeral database","Memory database has no config","Simple key-value embedded database based on sled","Simple key-value embedded database based on sled","Simple key-value embedded database based on sled","Configuration type for a sled::Tree database","Sqlite embedded database using rusqlite","Sqlite embedded database using rusqlite","Sqlite embedded database using rusqlite","Configuration type for a sqlite::SqliteDatabase database","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","Main directory of the db","Main directory of the db","","","","","","","","","","","","","","","","Name of the database tree, a separated namespace for the …","","","","","","","","","","","","","","","","","","","","","In-memory ephemeral database","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","","","","","Create a new empty database","","","","","","","","","","","A raw scriptpubkey (including pay-to-pubkey) under Legacy …","Alias for a Descriptor that contains extended derived keys","Script descriptor","","The descriptor pubkey, either a single pubkey or an xpub.","An extended key with origin, derivation path, and wildcard.","Alias for a Descriptor that can contain extended keys …","Trait implemented on Descriptors to add a method to …","Unhardened wildcard, e.g. *h","Alias for the type of maps that represent derivation paths …","Trait for types which can be converted into an …","The consensus key associated with the type. Must be a …","Alias type for a map of public key to secret key","Legacy ScriptContext To be used as P2SH scripts For …","Top-level script AST type","No wildcard","Pay-to-PubKey-Hash","","The ScriptContext for Miniscript. Additional type …","Segwitv0 ScriptContext","Pay-to-ScriptHash(includes nested wsh/wpkh/sorted multi)","Single public key.","Alias for the type of maps that represent taproot key …","Pay-to-Taproot","Unhardened wildcard, e.g. *","Whether a descriptor has a wildcard in it","Pay-to-Witness-PubKey-Hash","Pay-to-Witness-ScriptHash with Segwitv0 context","Extended public key (xpub).","Computes the Bitcoin address of the descriptor, if one …","","","Get a reference to the inner AstElem representing the root …","Replaces all wildcards (i.e. /*) in the descriptor with a …","","","","","","","","","","","","","Enumerates all child nodes of the current AST node (self) …","","Depending on script Context, some of the Terminals might …","","","Depending on script Context, some of the script resource …","","Check the consensus + policy(if not disabled) rules that …","Consensus rules at the Miniscript satisfaction time. It is …","","","Policy rules at the Miniscript satisfaction time. It is …","","","Check the consensus + policy(if not disabled) rules …","Depending on ScriptContext, fragments can be malleable. …","","","Check whether the given satisfaction is valid under the …","","","Descriptor checksum","","","","","","","","","","","","","","","","","","","Whether the given miniscript contains a raw pkh fragment","","","","","","","","","","","","","The derivation path","Deprecated name for [at_derivation_index].","Convert all the public keys in the descriptor to …","Convert all the public keys in the descriptor to …","Get the DescriptorType of Descriptor","","","","","","","","","Encode as a Bitcoin script","","","","","","","Descriptor errors","Computes the the underlying script before any hashing is …","Additional information helpful for extra analysis.","Check whether the miniscript follows the given Extra …","Extract the spending policy","","","Utility method for deriving the descriptor at each index …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Add type information(Type and Extdata) to Miniscript based …","","Parse a Miniscript from string and perform sanity checks …","Attempt to parse an Miniscripts that don’t follow the …","Attempt to parse an insane(scripts don’t clear sanity …","Parse an expression tree into a descriptor.","Parse an expression tree into a Miniscript. As a general …","","","","","","","Returns child node with given index, if any","Returns Option::Some with cloned n’th public key from …","Returns satisfying non-malleable witness and scriptSig to …","Returns a possilbly mallable satisfying non-malleable …","Whether the miniscript contains a combination of timelocks","Whether the miniscript has repeated Pk or Pkh","Whether or not the descriptor has any wildcards i.e. /*.","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Extracts the AstElem representing the root of the …","Convert to wallet descriptor","","Whether or not the descriptor has any wildcards","Whether the miniscript is malleable","Creates a new Iter iterator that will iterate over all …","Creates a new PkIter iterator that will iterate over all …","","","Lifting corresponds conversion of miniscript into Policy […","Compares this key with a keysource and returns the …","Depending on script context, the size of a satifaction …","","","Maximum size, in bytes, of a satisfying witness. For …","Computes an upper bound on the weight of a satisfying …","Maximum number of witness elements used to satisfy the …","Local helper function to display error messages with …","","","Create a new bare descriptor from witness script Errors …","Create a new pk descriptor","Create a new PkH descriptor","Create a new sh for a given redeem script Errors when …","Create a new sh sortedmulti descriptor with threshold k …","Create a new sh wrapper for the given wpkh descriptor","Create a new sh wrapper for the given wsh descriptor","Create a new sh wrapped wpkh from Pk. Errors when …","Create a new sh wrapped wsh descriptor with witness script …","Create a new sh wrapped wsh sortedmulti descriptor from …","Create new tr descriptor Errors when miniscript exceeds …","Create a new Wpkh descriptor Will return Err if …","Create a new wsh descriptor from witness script Errors …","Create a new wsh sorted multi descriptor Errors when …","A node in the Abstract Syntax Tree(","Origin information","Other top level checks that are context specific","Attempt to parse a Script into Miniscript representation.","Parse a descriptor that may contain secret keys","Attempt to parse an insane(scripts don’t clear sanity …","Attempt to parse an miniscript with extra features that …","","","","","","","Get the len of public key when serialized based on context …","","","Descriptor policy","Whether all spend paths of miniscript require a signature","Checks whether the descriptor is safe.","Check whether the underlying Miniscript is safe under the …","Attempts to produce a non-malleable satisfying witness and …","Attempt to produce non-malleable satisfying witness for the","Attempt to produce a malleable satisfying witness for the …","Computes the scriptCode of a transaction output.","Computes the scriptpubkey of the descriptor.","Size, in bytes of the script-pubkey. If this Miniscript is …","","","The type of signature required for satisfaction","","","Descriptor templates","","","","","","","","","Serialize a descriptor to string with its secret keys","Check top level consensus rules.","Check whether the top-level is type B","Converts a descriptor using abstract keys to one using …","Translates a struct from one generic to another where the …","","","","","","","","","","","","","The correctness and malleability type information for the …","","","","","","","Computes the scriptSig that will be in place for an …","","","","","","","Whether the descriptor is wildcard","Whether the miniscript can exceed the resource …","The extended key","Compute the checksum of a descriptor, excludes any …","Compute the checksum bytes of a descriptor, excludes any …","Compute the checksum of a descriptor","Compute the checksum bytes of a descriptor","Error during base58 decoding","BIP32 error","Errors related to the parsing and usage of descriptors","The descriptor contains hardened derivation steps on …","Hex decoding error","Invalid byte found in the descriptor checksum","The provided descriptor doesn’t match its checksum","Invalid HD Key path, such as having a wildcard but a …","Error thrown while working with keys","Miniscript error","Key-related error","Error while extracting and manipulating policies","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","Absolute timeclock timestamp","Can not add to an item that is Satisfaction::None or …","Can not add to an item that is …","Options to build the satisfaction field in the policy","Can satisfy the policy item","An extra condition that must be satisfied but that is out …","Type for a map of sets of Condition items keyed by each set…","ECDSA Signature for a raw public key","An extended key fingerprint","Type for a map of folded sets of Condition items keyed by …","SHA256 then RIPEMD160 preimage hash","Double SHA256 preimage hash","Incompatible conditions (not currently used)","Index out of range for an item to satisfy a …","Can not merge CSV or timelock values unless both are less …","Multi-signature public keys with threshold count","Cannot satisfy or contribute to the policy item","Don’t generate satisfaction field","Not enough items are selected to satisfy a …","Only a partial satisfaction of some kind of threshold …","Can reach the threshold of some kind of threshold policy","A unique identifier for a key","Descriptor spending policy","Errors that can happen while extracting and manipulating …","Analyze the given PSBT to check for existing signatures","Like Psbt variant and also check for expired timelocks","A legacy public key","Relative timelock locktime","RIPEMD160 preimage hash","Represent if and how much a policy item is satisfied by …","An item that needs to be satisfied","Schnorr Signature for a raw public key","SHA256 preimage hash","Threshold items with threshold count","A x-only public key","","","","","","","","","","","","","","","","","","","","","","","","","","","How the wallet’s descriptor can satisfy this policy node","Optional CheckSequenceVerify condition","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Return the conditions that are set by the spending policy …","","","","","Returns a unique id for the SatisfiableItem","Identifier for this policy node","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Returns whether the SatisfiableItem is a leaf item","Returns whether the Satisfaction is a leaf item","Returns true if there are no extra conditions to verify","Type of this policy node","","","Return whether or not a specific path in the policy tree …","How much a given PSBT already satisfies this policy node …","","","","","","Optional timelock condition","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Current blockchain height","The highest confirmation height between the inputs CSV …","Given PSBT","Extra conditions that also need to be satisfied","Extra conditions that also need to be satisfied","Extra conditions that also need to be satisfied","The items that can be satisfied by the descriptor or are …","The items that can be satisfied by the descriptor","Threshold","Threshold","Total number of items","Total number of items","Whether the items are sorted in lexicographic order (used …","Whether the items are sorted in lexicographic order (used …","The digest value","The digest value","The digest value","The digest value","The policy items","The raw public key or extended key fingerprint","The required threshold count","The required threshold count","The timelock value","The timelock value","BIP44 template. Expands to pkh(key/44'/{0,1}'/0'/{0,1}/*)","BIP44 public template. Expands to pkh(key/{0,1}/*)","BIP49 template. Expands to …","BIP49 public template. Expands to sh(wpkh(key/{0,1}/*))","BIP84 template. Expands to wpkh(key/84'/{0,1}'/0'/{0,1}/*)","BIP84 public template. Expands to wpkh(key/{0,1}/*)","Trait for descriptor templates that can be built into a …","Type alias for the return type of DescriptorTemplate, …","P2PKH template. Expands to a descriptor pkh(key)","P2WPKH template. Expands to a descriptor wpkh(key)","P2WPKH-P2SH template. Expands to a descriptor sh(wpkh(key))","","","","","","","","","","","","","","","","","","","Build the complete descriptor","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","BIP32 error","Trait for keys that can be derived.","Container for public or secret keys","The descriptor pubkey, either a single pubkey or an xpub.","The descriptor secret key, either a single private key or …","Type specifying the amount of entropy required e.g. [u8;32]","Returned error in case of failure","Trait that adds extra useful methods to ScriptContexts","Enum for extended keys that can be either xprv or xpub","A bitcoin public key (compressed or uncompressed).","Trait that allows generating a key with the default options","Trait for keys that can be generated","Output of a GeneratableKey key generation","Trait for objects that can be turned into a public or …","The key has an invalid checksum","The key is not valid for the given network","The key cannot exist in the given script context","The consensus key associated with the type. Must be a …","Errors thrown while working with keys","Alias type for a map of public key to secret key","Legacy scripts","Custom error message","Miniscript error","Extra options required by the generate_with_entropy","A private extended key, aka an xprv","Options for generating a PrivateKey","A public extended key, aka an xpub","The ScriptContext for Miniscript. Additional type …","Enum representation of the known valid ScriptContexts","Segwitv0 scripts","Single public key.","Single private key.","A descriptor bitcoin::PrivateKey with optional origin …","A descriptor SinglePubKey with optional origin information.","Single public key without any origin or range information.","Contents of a “sortedmulti” descriptor","Taproot scripts","Set of valid networks for a key","An xonly public key.","Extended private key (xpriv).","Extended public key (xpub).","Create a set containing mainnet, testnet and regtest","Returns the ScriptContext as a ScriptContextEnum","Replaces any wildcard (i.e. /*) in the key with a …","BIP-0039","","","","","","","","","","","","","","","","","","","","","","","","","Depending on script Context, some of the Terminals might …","Depending on script Context, some of the script resource …","Check the consensus + policy(if not disabled) rules that …","Consensus rules at the Miniscript satisfaction time. It is …","Policy rules at the Miniscript satisfaction time. It is …","Check the consensus + policy(if not disabled) rules …","Depending on ScriptContext, fragments can be malleable. …","Check whether the given satisfaction is valid under the …","","","","","","","","","","","","","","","","","","","Whether the generated key should be “compressed” or not","","","","","","","","","","","","","","","","","","","","","","","","","","","Deprecated name of [at_derivation_index].","","","","","","","","","","","","","Encode as a Bitcoin script","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Create an instance given a public key and a set of valid …","Create an instance given a secret key and a set of valid …","","","Parse an expression tree into a SortedMultiVec","Full path, from the master key","Generate a key given the options with a random entropy","Generate a key with the default options and a random …","Generate a key given the extra options and the entropy","Generate a key with the default options and a given entropy","","","","","Return whether or not the key contains the private data","Whether or not the key has a wildcard","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Turn the key into a DescriptorKey within the requested …","Consume self and turn it into a DescriptorKey by adding …","","","","","","Consume self and turn it into an ExtendedKey","","","Consumes self and returns the key","Transform the ExtendedKey into an ExtendedPrivKey for the …","Transform the ExtendedKey into an ExtendedPubKey for the …","Whether or not the key has a wildcard","Returns whether the script context is Legacy","Returns whether the script context is …","Returns whether the script context is Segwitv0","Returns whether the script context is …","Returns whether the script context is Tap, aka Taproot or …","Returns whether the script context is …","","","signatures required","The public key.","The private key.","","Create a set only containing mainnet","The fingerprint of the master key associated with this …","Depending on script context, the size of a satifaction …","Maximum size, in bytes, of a satisfying witness. In …","Maximum number of witness elements used to satisfy the …","Compute the intersection of two sets","Local helper function to display error messages with …","Create a new instance of SortedMultiVec given a list of …","Origin information (fingerprint and derivation path).","Origin information (fingerprint and derivation path).","Other top level checks that are context specific","Override the computed set of valid networks","","","","","Get the len of public key when serialized based on context …","public keys inside sorted Multi","","utility function to sanity a sorted multi vec","Attempt to produce a satisfying witness for the witness …","Size, in bytes of the script-pubkey. If this Miniscript is …","The type of signature required for satisfaction","Create Terminal::Multi containing sorted pubkeys","Create a set containing testnet and regtest","","","","","","","","Returns the public version of this key.","","","","","Check top level consensus rules.","Check whether the top-level is type B","This will panic if fpk returns an uncompressed key when …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The mnemonic can be interpreted as multiple languages. Use …","Entropy was not a multiple of 32 bits or between 128-256n …","Mnemonic has a word count that is not a multiple of 6.","The English language.","A BIP39 error.","The mnemonic has an invalid checksum.","Language to be used for the mnemonic phrase.","A mnemonic code.","Type for a BIP39 mnemonic with an optional passphrase","Mnemonic contains an unknown word. Error contains the …","Type describing entropy length (aka word count) in the …","12 words mnemonic (128 bits entropy)","15 words mnemonic (160 bits entropy)","18 words mnemonic (192 bits entropy)","21 words mnemonic (224 bits entropy)","24 words mnemonic (256 bits entropy)","The list of supported languages. Language support is …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Create a new English Mnemonic from the given entropy. …","Create a new Mnemonic in the specified language from the …","","Generate a new Mnemonic in the given language with the …","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","Get the language of the Mnemonic.","Determine the language of the mnemonic.","Parse a mnemonic and detect the language from the enabled …","Parse a mnemonic in the given language.","Parse a mnemonic in normalized UTF8 in the given language.","Parse a mnemonic in normalized UTF8.","","","","","Convert the mnemonic back to the entropy used to generate …","Convert the mnemonic back to the entropy used to generate …","","","","Convert to seed bytes.","Convert to seed bytes with a passphrase in normalized UTF8.","","","","","","","","","","","","","","","","","","","","Get the number of words in the mnemonic.","Get an iterator over the words.","Get words from the word list that start with the given …","Trait to add functions to extract utxos and calculate fees.","The total transaction fee amount, sum of input amounts …","The transaction’s fee rate. This value will only be …","Get the TxOut for the specified input index, if it doesn’…","The address index selection strategy to use to derived an …","A derived address and the index it was found at For …","Trait to check if a value is below the dust limit. We are …","Return the address for the current descriptor index if it …","Return a new address after incrementing the current …","Return the address for a specific descriptor index. Does …","Return the address for a specific descriptor index and …","Options to a sync.","A Bitcoin wallet","Add an external signer","Address","","","","","","","","","Bump the fee of a transaction previously created with this …","Start building a transaction.","Coin selection","Return an immutable reference to the internal database","","","","","","","","","","","Return the checksum of the public descriptor associated to …","","","","","Ensures that there are at least max_addresses addresses …","","Wallet export","Finalize a PSBT, i.e., for each input determine if …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Return a derived address using the external descriptor, …","Return the balance, separated into available, …","Returns the descriptor used to create addresses for a …","Return a fake wallet that appears to be funded for testing.","Return a derived address using the internal (change) …","get the corresponding PSBT Input for a LocalUtxo","Get the signers","Return a single transactions made and received by the …","Returns the UTXO owned by this wallet corresponding to …","HWI Signer","Child index of this address","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Check whether or not a value is below dust limit","Return whether or not a script is part of this wallet …","Type of keychain","Return an unsorted list of transactions made and received …","Return the list of unspent outputs of this wallet","Get the Bitcoin network the wallet is using.","Create a wallet.","Create a new “offline” wallet","Return the spending policies for the wallet’s descriptor","The progress tracker which may be informed when progress …","Return the “public” version of the wallet’s …","Return the secp256k1 context used for all signing …","Sign a transaction with all the wallet’s signers, in the …","Generalized signers","Sync the internal database with the blockchain","Cross-platform time","","","","","","","","","","Transaction builder","","","","","Verify transactions against the consensus rules","","","","","Deterministically generate a unique name given the …","Branch and bound coin selection","It’s possible to create spendable output from excess …","Trait for generalized coin selection algorithms","Result of a successful coin selection","Default coin selection algorithm used by TxBuilder if not …","Remaining amount after performing coin selection","Simple and dumb coin selection","It’s not possible to create spendable output from excess …","OldestFirstCoinSelection always picks the utxo with the …","","","","","","","","","","","","","","","Perform the coin selection","","","","Decide if change can be created","","","","","","","","","","","","","","","","","","","Remaining amount after deducing fees and outgoing outputs","Total fee amount for the selected utxos in satoshis","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","The total value of the inputs selected from the local …","Create new instance with target size for change output","List of outputs selected for use as inputs","The total value of the inputs selected.","","","","","","","","","","","","","","","","","","","","","","","Effective amount available to create change after …","The calculated fee for the drain TxOut with the selected …","Threshold to consider amount as dust for this particular …","The deducted change output fee","Exceeding amount of current selection over outgoing value …","Structure that contains the export of a wallet","Alias for FullyNodedExport","Earliest block to rescan when looking for the wallet’s …","","","Return the internal descriptor, if present","","","Return the external descriptor","","","Export a wallet","","Returns the argument unchanged.","","","Calls U::from(self).","Arbitrary label for the wallet","","","","","","","Custom signer for Hardware Wallets","","","","","","","Returns the argument unchanged.","Create a instance from the specified device and chain","","","Calls U::from(self).","","","","","","The signer will sign all the leaves it has a key for.","Dummy identifier","The signer won’t sign the specified leaves.","The fingerprint of a BIP32 extended key","Error while signing using hardware wallets","The signer won’t sign leaves other than the ones …","Input index is out of range","PSBT Input signer","The private key in use has the right fingerprint but …","The non_witness_utxo specified is invalid","Invalid SIGHASH for the signing context in use","Legacy context","The fingerprint and derivation path are missing from the …","The private key is missing for the required public key","The non_witness_utxo field of the transaction is required …","The witness_script field of the transaction is required to …","The witness_utxo field of the transaction is required to …","The psbt contains a non-SIGHASH_ALL sighash in one of its …","The signer won’t sign any leaf.","Bitcoin HASH160 (RIPEMD160 after SHA256) hash of an ECDSA …","Segwit v0 context (BIP 143)","Error while computing the hash to sign","Options for a software signer","Common signer methods","Signing context","Signing error","Identifier of a signer in the SignersContainers. Used as a …","Defines the order in which signers are called","Wrapper structure to pair a signer with its context","Container for multiple signers","Taproot context (BIP 340)","Customize which taproot script-path leaves the signer …","PSBT signer","The user canceled the operation","Adds an external signer to the container for the specified …","Whether the signer should use the sighash_type set in the …","Whether we should grind ECDSA signature to ensure signing …","Create a map of public keys to secret keys","Whether the wallet should assume a specific height has …","","","","","","","","","","","","","","","","","Build a new signer container from a KeyMap","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Return the secret key for the signer","","","","","","","","","","","","","","","","Finds the signer with lowest ordering for a given id in …","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Return the SignerId for this signer","","","Returns the list of identifiers of all the signers in the …","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Create a wrapped signer from a signer and a context","Default constructor","","","","Removes a signer from the container and returns it","Whether to remove partial signatures from the PSBT inputs …","Sign a single psbt input","","","Sign all the inputs of the psbt","","Whether we should try to sign a taproot transaction with …","Returns the list of signers in the container, sorted by …","Specifies which Taproot script-spend leaves we should sign …","","","","","","","","","","Whether the signer should trust the witness_utxo, if the …","Whether to try finalizing the PSBT after the inputs are …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Whether the signer can sign for the internal key or not","Return the current timestamp in seconds","BIP69 / Lexicographic","Marker type to indicate the TxBuilder is being used to …","Use both change and non-change outputs (default)","Only use non-change outputs (see …","Policy regarding the use of change outputs when creating a …","Marker type to indicate the TxBuilder is being used to …","Only use change outputs (see TxBuilder::only_spend_change)","Randomized (default)","A transaction builder","Context in which the TxBuilder is valid","Ordering of the transaction’s inputs and outputs","Unchanged","Add data as an output, using OP_RETURN","Add a foreign UTXO i.e. a UTXO not owned by this wallet.","Fill-in the PSBT_GLOBAL_XPUB field with the extended keys …","Add a recipient to the internal list","Add a utxo to the internal list of unspendable utxos","Add a utxo to the internal list of utxos that must be spent","Add the list of outpoints to the internal list of UTXOs …","Set whether or not the dust limit is checked.","Explicitly tells the wallet that it is allowed to reduce …","","","","","","","","","","","Set a specific ChangeSpendPolicy. See …","","","","","","","","","","","","","Choose the coin selection algorithm","Set the current blockchain height.","","","","","","","","","","","","","","","Do not spend change outputs","Sets the address to drain excess coins to.","Spend all the available inputs. This respects filters like …","","","","","","Enable signaling RBF","Enable signaling RBF with a specific nSequence value","","","Set an absolute fee","Set a custom fee rate","Finish building the transaction.","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Fill-in the psbt::Output::redeem_script and …","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Only spend utxos added by add_utxo.","Use a specific nLockTime while creating the transaction","Only spend change outputs","Only Fill-in the psbt::Input::witness_utxo field when …","Choose the ordering for inputs and outputs of the …","","","Set the policy path to use while creating the transaction …","Replace the recipients already added with a new list","Sign with a specific sig hash","Sort transaction inputs and outputs by TxOrdering variant","","","","","","","","","","","","","","","","","","","","","Replace the internal list of unspendable utxos with a new …","Build a transaction with a specific version","","","","","","Consensus error","Generic error","The transaction being spent doesn’t have the requested …","The transaction being spent is not available in the …","Error during validation of a tx agains the consensus rules","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","Verify a transaction against the consensus rules",""],"i":[0,19,0,19,19,19,19,0,19,19,19,0,19,2,0,19,19,19,13,19,0,19,19,2,19,19,19,19,19,19,19,19,0,13,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,0,19,19,19,0,19,0,19,0,19,0,0,19,0,0,1,2,2,4,2,0,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,2,2,4,11,12,13,14,15,1,2,4,11,12,13,14,15,1,14,15,14,1,0,4,15,1,4,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,0,0,2,11,14,15,1,19,2,4,11,12,13,14,15,1,2,4,11,12,13,14,15,1,14,4,4,19,19,2,4,11,12,13,14,15,1,1,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,2,4,11,12,13,14,15,15,1,4,4,4,4,4,4,2,11,1,1,2,11,15,1,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,11,11,0,15,13,11,4,14,15,19,0,14,12,14,2,11,14,15,1,0,4,1,0,15,2,4,11,12,13,14,15,1,19,1,14,1,19,2,4,11,12,13,14,15,1,19,2,4,11,12,13,14,15,1,14,13,11,19,2,4,11,12,13,14,15,1,1,12,232,0,19,2,4,11,12,13,14,15,1,0,2,233,234,233,234,235,236,237,237,53,0,0,0,0,0,0,238,0,0,0,0,53,53,0,0,0,239,0,0,0,0,0,0,0,0,0,53,54,55,53,54,55,240,239,239,53,54,55,53,54,55,0,54,55,53,54,55,53,54,55,53,54,55,0,53,0,240,53,54,55,53,54,55,238,241,240,53,242,243,53,53,54,55,53,54,55,0,0,0,0,239,53,54,55,53,54,55,53,54,55,53,54,55,61,54,55,53,54,55,244,244,0,0,63,64,63,64,63,64,63,64,63,64,63,64,63,64,64,63,64,63,64,64,63,64,64,63,64,63,63,63,63,63,64,64,64,64,64,63,63,63,63,63,63,64,63,64,64,64,63,64,63,64,63,64,63,64,63,63,35,0,35,0,0,0,35,35,35,35,35,35,35,35,0,35,35,35,0,35,35,35,73,74,73,78,67,74,72,35,73,78,67,74,72,35,67,74,72,74,72,78,78,73,73,78,67,74,72,35,73,78,67,74,72,35,74,72,73,78,67,74,72,35,74,72,67,73,78,67,74,72,35,35,73,78,67,74,72,35,35,35,35,35,35,67,67,67,67,78,78,73,67,78,73,73,78,67,74,72,35,73,78,67,74,72,35,78,73,72,73,67,72,35,78,78,74,72,72,74,74,72,74,72,35,73,78,67,74,72,35,73,78,67,74,72,35,73,78,67,74,72,35,73,78,67,74,72,35,67,0,0,65,70,65,70,65,70,70,65,65,70,65,70,70,65,70,70,65,70,65,65,70,65,65,65,65,65,65,70,65,70,70,70,70,70,70,70,65,70,65,70,65,70,70,70,65,70,65,34,0,0,0,34,34,34,34,34,34,34,34,34,34,71,34,68,71,34,68,71,68,71,71,71,34,68,68,71,34,68,71,71,34,68,71,71,68,34,34,68,71,34,34,34,34,34,34,34,68,71,68,68,68,68,68,68,34,68,71,34,68,71,68,71,34,71,71,71,71,71,34,34,68,71,34,68,71,34,68,71,34,68,71,68,68,0,98,98,0,0,0,0,98,69,96,66,69,97,98,96,66,69,97,98,96,66,96,69,97,98,96,69,97,98,96,98,97,96,66,66,69,97,98,96,66,69,97,98,96,69,97,98,66,69,97,98,96,69,97,98,66,66,69,97,98,96,97,66,69,97,98,96,66,66,66,98,66,66,98,66,69,97,98,96,66,69,97,98,96,69,96,98,97,69,97,98,97,97,69,96,69,97,98,96,66,69,97,98,96,66,69,97,98,96,66,69,97,98,96,69,96,66,69,97,98,96,69,96,66,245,246,246,0,0,223,0,0,247,0,0,0,0,0,0,223,99,100,99,100,99,100,248,99,100,100,223,99,99,249,99,249,99,249,99,249,99,249,99,249,99,249,99,99,100,99,100,100,99,100,99,100,99,100,247,99,248,99,248,99,248,99,248,99,248,99,248,99,248,99,248,99,99,100,99,100,248,99,248,99,248,99,248,99,0,99,99,100,249,99,249,99,249,99,249,99,249,99,249,99,100,99,100,99,100,99,100,99,100,0,0,0,103,102,106,103,102,106,0,103,102,106,0,102,103,102,104,105,106,103,102,104,105,106,102,102,103,102,103,102,103,102,103,102,103,102,103,102,103,102,103,102,104,105,106,103,102,104,105,106,104,105,106,103,102,104,105,106,102,104,105,106,103,103,103,103,102,102,102,102,104,105,106,106,106,106,102,102,102,102,102,102,102,102,102,103,102,104,105,106,103,102,104,105,106,102,102,102,102,104,105,104,105,106,103,102,103,102,103,102,103,102,103,102,103,102,104,103,102,104,105,106,103,102,104,105,106,103,102,104,105,106,103,102,104,105,106,0,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,109,0,0,0,0,0,0,0,118,0,0,130,0,0,0,118,109,0,0,0,109,114,0,109,118,0,109,109,114,109,119,120,112,109,117,118,109,119,120,112,117,118,109,119,120,112,112,0,130,119,120,130,120,130,130,119,120,130,119,120,130,130,119,120,130,119,120,0,117,118,109,119,120,112,117,118,109,119,120,112,117,118,109,119,120,112,112,117,118,109,119,120,112,117,118,109,119,120,112,117,109,109,109,109,109,112,117,118,109,119,120,112,112,117,118,109,119,120,112,0,109,112,112,250,109,112,109,117,118,109,109,119,120,112,112,109,112,117,118,109,109,109,109,109,109,109,119,120,112,112,109,112,112,112,109,112,117,118,109,119,120,112,112,112,109,109,112,112,109,117,118,109,119,120,112,117,118,109,119,120,112,117,118,109,119,120,112,112,203,139,109,112,112,112,109,112,112,117,130,119,120,112,109,112,130,119,120,109,109,109,109,109,109,109,109,109,109,109,109,109,109,112,117,130,112,109,112,112,117,118,109,119,120,112,130,119,120,0,112,109,112,109,112,112,109,109,112,109,112,130,119,120,0,117,118,109,119,120,112,109,112,109,130,130,109,112,117,118,109,119,120,112,117,118,109,119,120,112,112,117,118,109,119,120,112,109,117,118,109,119,120,112,117,112,117,0,0,0,0,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,153,22,22,0,154,0,0,153,152,0,153,153,22,22,22,153,154,128,22,154,154,0,0,0,128,128,152,153,153,0,0,153,153,153,152,152,153,154,129,155,22,128,152,153,154,129,155,22,128,152,153,154,129,155,128,152,153,154,129,155,128,129,155,155,152,153,154,129,155,22,128,152,153,154,129,155,22,128,152,153,154,129,155,22,128,152,153,154,129,155,22,152,153,154,129,155,22,22,128,152,153,154,154,129,129,155,22,128,129,152,155,152,155,153,129,152,153,154,129,155,22,128,152,153,154,129,155,22,128,153,154,155,129,155,22,129,129,152,153,154,129,155,155,152,153,154,129,155,128,22,152,153,154,129,155,22,128,152,153,154,129,155,22,128,152,153,154,129,155,22,128,152,153,154,129,155,22,128,251,251,251,252,253,254,253,254,253,254,253,254,253,254,255,256,257,258,259,260,260,259,261,262,0,0,0,0,0,0,0,0,0,0,0,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,263,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,157,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,159,160,161,163,164,165,166,167,168,32,0,0,0,0,264,264,0,0,174,0,0,0,0,32,32,32,130,0,0,111,32,32,264,181,0,181,0,0,111,114,176,0,0,0,0,111,0,174,176,114,0,265,114,0,181,171,172,114,176,173,177,174,179,111,175,32,181,171,172,114,176,173,177,174,179,111,175,32,130,130,130,130,130,130,130,130,171,172,114,173,174,111,175,171,172,114,173,174,111,175,172,114,173,174,175,175,181,171,171,172,114,176,173,177,174,179,111,175,32,181,171,172,114,176,173,177,174,179,111,175,32,114,181,171,172,114,176,173,177,174,179,111,175,32,172,172,114,173,174,111,172,172,114,114,176,176,173,177,174,179,111,175,32,32,172,181,181,181,171,172,114,114,176,173,177,174,179,111,175,32,32,32,179,179,114,176,172,114,264,266,264,266,172,114,173,174,181,114,172,114,173,174,181,171,172,114,176,173,177,174,179,111,175,32,181,171,172,114,176,173,177,174,179,111,175,32,158,162,171,171,114,176,179,162,181,171,171,181,181,114,265,111,265,111,265,111,114,114,172,173,177,172,0,114,130,172,172,0,130,172,173,177,130,179,172,114,173,174,130,172,32,172,172,172,130,172,0,171,172,114,173,174,111,175,176,172,114,176,32,130,130,172,181,171,172,114,176,173,177,174,179,111,175,32,181,171,172,114,176,173,177,174,179,111,175,32,181,171,172,114,176,173,177,174,179,111,175,32,181,171,172,114,176,173,177,174,179,111,175,32,187,187,187,186,0,187,0,0,0,187,0,267,267,267,267,267,186,186,187,188,267,186,187,188,267,186,187,188,186,187,188,186,188,186,187,188,267,186,187,188,267,188,186,187,188,267,186,187,188,186,186,187,187,188,188,186,187,188,267,188,188,188,188,188,186,188,186,188,186,187,188,267,186,187,188,267,188,189,188,189,188,188,188,188,188,188,186,188,187,188,188,188,186,187,188,188,188,186,187,188,186,187,188,267,186,187,188,267,186,187,188,267,186,187,188,267,188,188,186,0,268,268,268,0,0,0,200,200,200,200,0,0,52,197,52,200,197,59,52,200,197,59,52,52,0,52,59,52,200,197,197,59,52,200,197,59,52,52,200,197,59,52,197,0,52,52,200,197,197,59,52,200,197,59,52,52,52,0,52,52,52,52,52,0,197,52,200,197,59,52,200,197,59,269,52,197,52,52,52,52,52,52,59,52,52,52,0,52,0,197,52,200,197,59,52,200,197,59,0,52,200,197,59,0,52,200,197,59,0,0,208,0,0,0,0,0,208,0,208,206,204,205,207,208,206,204,205,207,204,205,204,205,224,204,205,207,0,204,205,207,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,206,206,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,206,207,206,206,204,205,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,208,206,204,205,207,270,271,271,270,271,0,0,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,0,210,210,210,210,210,210,210,210,210,210,210,210,210,210,210,210,219,214,219,214,33,219,33,0,33,33,33,216,33,33,33,33,33,33,219,214,216,33,0,0,0,0,0,0,0,0,216,0,0,33,127,199,199,127,199,214,33,216,218,190,127,199,219,214,33,216,218,190,127,199,219,127,214,33,216,218,190,127,199,219,214,33,216,218,190,127,199,219,214,190,190,127,199,219,214,33,216,218,218,190,127,199,219,214,33,216,218,190,127,199,219,272,218,218,214,33,216,218,190,127,199,219,214,33,216,190,219,127,214,33,33,216,218,190,127,199,219,214,214,214,33,33,33,216,218,190,127,199,219,214,214,272,218,218,127,214,33,216,218,190,127,199,219,214,33,216,218,190,127,199,219,218,127,214,190,33,127,199,273,218,218,191,218,199,127,199,214,33,216,218,190,127,199,219,33,199,199,214,33,216,218,190,127,199,219,214,33,216,218,190,127,199,219,214,33,216,218,190,127,199,219,214,33,216,218,190,127,199,219,274,0,227,0,226,226,0,0,226,227,0,0,0,227,194,194,194,194,194,194,194,194,194,195,193,194,227,226,195,193,194,227,226,194,195,193,194,227,226,195,193,194,227,226,227,226,194,194,195,193,227,226,195,193,194,227,226,195,193,194,227,226,194,194,194,195,193,194,227,226,194,194,227,226,194,194,194,195,193,194,227,226,195,193,194,227,226,227,226,227,226,194,195,193,194,227,226,195,193,194,227,226,194,194,194,194,194,227,226,194,194,194,227,195,193,194,227,226,195,193,194,227,226,195,193,194,227,226,195,193,194,227,226,194,194,195,193,194,227,226,30,30,30,30,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,0,30],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,1],1],[2,3],[2],[4,5],[[],6],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[10,[[9,[7,8]]]]]],[2,2],[4,4],[11,11],[12,12],[13,13],[14,14],[15,15],[1,1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[14,14],16],[[15,15],16],0,0,0,[[],4],[[],15],[[],1],[[],4],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[],[[10,[2]]]],[[],[[10,[11]]]],[[],[[10,[14]]]],[[],[[10,[15]]]],[[],[[10,[1]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[2,2],17],[[4,4],17],[[11,11],17],[[12,12],17],[[13,13],17],[[14,14],17],[[15,15],17],[[1,1],17],0,[[4,6],18],[[4,6],18],[[19,20],21],[[19,20],21],[[2,20],21],[[4,20],21],[[11,20],21],[[12,20],21],[[13,20],21],[[14,20],21],[[15,20],21],[[1,20],21],[[1,20],21],0,[22,19],[23,19],[24,19],[25,19],[26,19],[[]],[27,19],[28,19],[29,19],[30,19],[31,19],[32,19],[33,19],[34,19],[35,19],[36,19],[37,19],[38,19],[39,19],[40,19],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,15],[[]],[5,4],[5,4],[5,4],[5,4],[[18,6],4],[[18,6],4],[[],18],[[],18],[1,18],[1,18],[2],[11],0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[[43,[42]],[43,[18]]],[[43,[15]]]],[13,44],0,[[4,4],[[43,[16]]]],[[14,14],[[43,[16]]]],[[15,15],[[43,[16]]]],[45],0,0,0,0,[2,10],[11,10],[14,10],[15,10],[1,10],0,[[4,4]],[46,1],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],47],[[],47],0,0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,[13,48],0,[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],0,0,[[],6],[[],50],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[51,[[10,[19]]]],[[50,[43,[42]]],[[10,[19]]]],[[52,[43,[42]]],[[10,[19]]]],[53,53],[54,54],[55,55],[[]],[[]],[[]],0,[[],54],[[],55],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[[53,53],17],0,[6,[[10,[4,19]]]],[[53,20],21],[[54,20],21],[[55,20],21],[[]],[[]],[[]],[[],[[10,[19]]]],[18,[[10,[56,19]]]],[[],[[57,[53]]]],[[],18],[[],[[10,[42,19]]]],[58,[[10,[[43,[51]],19]]]],[53],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[],55],[[],54],[[]],0,[[52,[43,[42]],59],[[10,[19]]]],[[]],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[5,[43,[47]]],[[10,[19]]]],[[54,5,[43,[47]]],[[10,[19]]]],[[55,5,[43,[47]]],[[10,[19]]]],[[]],[[]],[[]],[[60,[62,[61]]],[[10,[19]]]],[[60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[63,51],[[10,[19]]]],[64,64],[[]],[6],[6],[6],[6],[[],[[10,[64]]]],[6],[6],[[64,64],17],[[63,6],[[10,[4,19]]]],[[64,20],21],[65,63],[66,63],[67,63],[68,63],[[]],[69,64],[[]],[70,64],[71,64],[72,64],[[],[[10,[63,19]]]],[[63,18],[[10,[56,19]]]],[63,[[57,[53]]]],[63,[[10,[42,19]]]],[[63,58],[[10,[[43,[51]],19]]]],[[],6],[[],6],[[]],[[]],[64,10],[[]],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[]],[[]],[[63,60,[62,[61]]],[[10,[19]]]],[[63,60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[73,51]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[67,51],[[10,[19]]]],[74,74],[72,72],[[]],[[]],[[75,[76,[73]],77],[[10,[78,35]]]],[[79,75,43,[76,[73]],77],[[10,[78,35]]]],[[],73],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[74]]]],[[],[[10,[72]]]],[6],[6],[6],[6],[6],[6],[[74,74],17],[[72,72],17],[[67,6],[[10,[4,19]]]],[[73,20],21],[[78,20],21],[[67,20],21],[[74,20],21],[[72,20],21],[[35,20],21],[[35,20],21],[[]],[[]],[[]],[[]],[[]],[80,35],[[]],[19,35],[81,35],[82,35],[83,35],[[],[[10,[67,19]]]],[[67,18],[[10,[56,19]]]],[67,[[57,[53]]]],[67,[[10,[42,19]]]],[78,[[76,[73]]]],[78,77],[[73,84],[[43,[51]]]],[[67,58],[[10,[[43,[51]],19]]]],[78,85],[[73,58],17],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[78,17],[73,[[9,[51]]]],0,[[],73],[[[9,[78]],[87,[86]],[43,[6]]],[[10,[67,35]]]],0,[45],[[78,50,[43,[88]]],[[10,[[43,[89]],35]]]],[[78,89],[[10,[35]]]],[74,10],[72,10],0,0,0,0,[[]],[[]],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[67,60,[62,[61]]],[[10,[19]]]],0,0,[[]],[[]],[[]],[[]],[[65,51],[[10,[19]]]],[70,70],[[]],[6],[65],[6],[6],[6],[[],[[10,[70]]]],[6],[6],[[70,70],17],[[65,6],[[10,[4,19]]]],[[70,20],21],[[]],[90,65],[[]],[[],[[10,[65,19]]]],[[65,18],[[10,[56,19]]]],[65,[[57,[53]]]],[65,[[10,[42,19]]]],[[65,58],[[10,[[43,[51]],19]]]],[[],6],[[],6],[[]],[[]],0,[70,10],0,0,0,[[]],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],0,0,[[]],[[]],[[65,60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[68,51],[[10,[19]]]],[71,71],[[]],0,[6],[6],[68],[6],[6],[6],[6],[[],[[10,[71]]]],[6],[6],[6],[[71,71],17],[[68,6],[[10,[4,19]]]],[[34,20],[[10,[91]]]],[[34,20],[[10,[91]]]],[[68,20],21],[[71,20],21],[92,34],[83,34],[93,34],[24,34],[[]],[31,34],[94,34],[[]],[[]],[[95,6],68],[[],[[10,[68,19]]]],[[68,18],[[10,[56,19]]]],[68,[[57,[53]]]],[68,[[10,[42,19]]]],[[68,58],[[10,[[43,[51]],19]]]],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[50,6],68],[[47,6],71],[45],0,[71,10],0,0,[[]],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[68,60,[62,[61]]],[[10,[19]]]],[[68,3],68],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[66,51],[[10,[19]]]],[[96,50,[43,[42]]],[[10,[19]]]],[69,69],[97,97],[98,98],[96,96],[[]],[[]],[[]],[[]],[[98,98],16],[[],97],0,[66],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[69]]]],[[],[[10,[97]]]],[[],[[10,[98]]]],[6],[6],[6],[6],[6],[[69,69],17],[[97,97],17],[[98,98],17],[[66,6],[[10,[4,19]]]],[[66,20],21],[[69,20],21],[[97,20],21],[[98,20],21],[[96,20],21],0,[[]],[[]],[[]],[[]],[[]],[[],[[10,[66,19]]]],[[66,18],[[10,[56,19]]]],[66,[[57,[53]]]],[[],18],[66,[[10,[42,19]]]],[[66,58],[[10,[[43,[51]],19]]]],[98],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],0,0,[[98,98],[[43,[16]]]],0,[69,10],[97,10],[98,10],0,0,0,0,[[]],[[]],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],0,0,[[]],[[]],[[]],[[]],[[]],0,0,[[66,60,[62,[61]]],[[10,[19]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[99],0,[[]],[[]],[[]],[[]],[[2,87],[[10,[19]]]],[[99,2,87],[[10,[19]]]],[100,100],[[]],[[],[[10,[19]]]],[99,[[10,[19]]]],0,[2,[[10,[[43,[42]],19]]]],[[99,2],[[10,[[43,[42]],19]]]],[101,[[10,[43,19]]]],[[99,101],[[10,[43,19]]]],[58,[[10,[[43,[51]],19]]]],[[99,58],[[10,[[43,[51]],19]]]],[[2,42],[[10,[[43,[101]],19]]]],[[99,2,42],[[10,[[43,[101]],19]]]],[[],[[10,[[43,[100]],19]]]],[99,[[10,[[43,[100]],19]]]],[[58,17],[[10,[[43,[14]],19]]]],[[99,58,17],[[10,[[43,[14]],19]]]],[44,[[10,[[43,[11]],19]]]],[[99,44],[[10,[[43,[11]],19]]]],[6],[6],[6],[6],[[],[[10,[100]]]],[6],[6],[[99,20],21],[[100,20],21],[[]],[[]],[[],[[10,[19]]]],[[],[[10,[99,19]]]],[2,[[10,[[43,[42]],19]]]],[[99,2],[[10,[[43,[42]],19]]]],[101,[[10,[43,19]]]],[[99,101],[[10,[43,19]]]],[58,[[10,[[43,[51]],19]]]],[[99,58],[[10,[[43,[51]],19]]]],[[2,42],[[10,[[43,[101]],19]]]],[[99,2,42],[[10,[[43,[101]],19]]]],[[],[[10,[[43,[100]],19]]]],[99,[[10,[[43,[100]],19]]]],[[58,17],[[10,[[43,[14]],19]]]],[[99,58,17],[[10,[[43,[14]],19]]]],[44,[[10,[[43,[11]],19]]]],[[99,44],[[10,[[43,[11]],19]]]],[2,[[10,[42,19]]]],[[99,2],[[10,[42,19]]]],[[],6],[[],6],[[]],[[]],[[],[[10,[[9,[51]],19]]]],[99,[[10,[[9,[51]],19]]]],[[[43,[2]]],[[10,[[9,[101]],19]]]],[[99,[43,[2]]],[[10,[[9,[101]],19]]]],[17,[[10,[[9,[14]],19]]]],[[99,17],[[10,[[9,[14]],19]]]],[[],[[10,[[9,[11]],19]]]],[99,[[10,[[9,[11]],19]]]],0,[[[87,[86]]],99],0,[100,10],[[2,42],[[10,[19]]]],[[99,2,42],[[10,[19]]]],[51,[[10,[19]]]],[[99,51],[[10,[19]]]],[[101,2,42],[[10,[19]]]],[[99,101,2,42],[[10,[19]]]],[100,[[10,[19]]]],[[99,100],[[10,[19]]]],[14,[[10,[19]]]],[[99,14],[[10,[19]]]],[11,[[10,[19]]]],[[99,11],[[10,[19]]]],[[]],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[102],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[102,2,87],[[10,[19]]]],[102,[[10,[19]]]],[[103,2],[[10,[[43,[42]],19]]]],[[102,2],[[10,[[43,[42]],19]]]],[[103,101],[[10,[43,19]]]],[[102,101],[[10,[43,19]]]],[[103,58],[[10,[[43,[51]],19]]]],[[102,58],[[10,[[43,[51]],19]]]],[[103,2,42],[[10,[[43,[101]],19]]]],[[102,2,42],[[10,[[43,[101]],19]]]],[103,[[10,[[43,[100]],19]]]],[102,[[10,[[43,[100]],19]]]],[[103,58,17],[[10,[[43,[14]],19]]]],[[102,58,17],[[10,[[43,[14]],19]]]],[[103,44],[[10,[[43,[11]],19]]]],[[102,44],[[10,[[43,[11]],19]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[104]]]],[[],[[10,[105]]]],[[],[[10,[106]]]],[6],[6],[6],[6],[6],[[102,20],21],[[104,20],21],[[105,20],21],[[106,20],21],[[]],[[],103],[[],103],[[],103],[107,102],[108,102],[[]],[99,102],[[]],[[]],[105,106],[[]],[[],106],[104,106],[[],[[10,[102,19]]]],[[102,2],[[10,[[43,[42]],19]]]],[[102,101],[[10,[43,19]]]],[[102,58],[[10,[[43,[51]],19]]]],[[102,2,42],[[10,[[43,[101]],19]]]],[102,[[10,[[43,[100]],19]]]],[[102,58,17],[[10,[[43,[14]],19]]]],[[102,44],[[10,[[43,[11]],19]]]],[[102,2],[[10,[42,19]]]],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[102,[[10,[[9,[51]],19]]]],[[102,[43,[2]]],[[10,[[9,[101]],19]]]],[[102,17],[[10,[[9,[14]],19]]]],[102,[[10,[[9,[11]],19]]]],0,0,[104,10],[105,10],[106,10],[[103,2,42],[[10,[19]]]],[[102,2,42],[[10,[19]]]],[[103,51],[[10,[19]]]],[[102,51],[[10,[19]]]],[[103,101,2,42],[[10,[19]]]],[[102,101,2,42],[[10,[19]]]],[[103,100],[[10,[19]]]],[[102,100],[[10,[19]]]],[[103,14],[[10,[19]]]],[[102,14],[[10,[19]]]],[[103,11],[[10,[19]]]],[[102,11],[[10,[19]]]],0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],0,[108],[[]],[[]],[[108,2,87],[[10,[19]]]],[108,[[10,[19]]]],[[],108],[[108,2],[[10,[[43,[42]],19]]]],[[108,101],[[10,[43,19]]]],[[108,58],[[10,[[43,[51]],19]]]],[[108,2,42],[[10,[[43,[101]],19]]]],[108,[[10,[[43,[100]],19]]]],[[108,58,17],[[10,[[43,[14]],19]]]],[[108,44],[[10,[[43,[11]],19]]]],[6],[6],[6],[[108,20],21],[[]],[[],[[10,[108,19]]]],[[108,2],[[10,[[43,[42]],19]]]],[[108,101],[[10,[43,19]]]],[[108,58],[[10,[[43,[51]],19]]]],[[108,2,42],[[10,[[43,[101]],19]]]],[108,[[10,[[43,[100]],19]]]],[[108,58,17],[[10,[[43,[14]],19]]]],[[108,44],[[10,[[43,[11]],19]]]],[[108,2],[[10,[42,19]]]],[[],6],[[]],[108,[[10,[[9,[51]],19]]]],[[108,[43,[2]]],[[10,[[9,[101]],19]]]],[[108,17],[[10,[[9,[14]],19]]]],[108,[[10,[[9,[11]],19]]]],[[],108],[[108,2,42],[[10,[19]]]],[[108,51],[[10,[19]]]],[[108,101,2,42],[[10,[19]]]],[[108,100],[[10,[19]]]],[[108,14],[[10,[19]]]],[[108,11],[[10,[19]]]],[[],10],[[],10],[[],49],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[109,77],[[10,[110,29]]]],[[],111],[[],111],[112,113],[[[109,[114]],42],[[109,[115]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[112,[[9,[112,8]]]],0,[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[113,[[10,[116]]]],[113,[[10,[116]]]],[113,[[10,[116]]]],[[],[[10,[116]]]],[[],[[10,[116]]]],[[],[[10,[116]]]],0,[117,117],[118,118],[109,109],[119,119],[120,120],[112,112],[[]],[[]],[[]],[[]],[[]],[[]],[[117,117],16],[[118,118],16],[[109,109],16],[[119,119],16],[[120,120],16],[[112,112],16],[112,17],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[[[109,[114]],42],[[109,[115]]]],[[[109,[115]],121],[[10,[[109,[122]],123]]]],[[[109,[114]],121,42],[[10,[[109,[122]],123]]]],[109,124],[[],[[10,[109]]]],[[],[[10,[112]]]],[6],[6],[6],[6],[6],[6],[112,101],[[117,117],17],[[118,118],17],[[109,109],17],[[119,119],17],[[120,120],17],[[112,112],17],0,[109,[[10,[101,29]]]],0,[[112,125],[[10,[126]]]],[[127,128,121],[[10,[[43,[129]],25]]]],[[[109,[114]],127,128,121],[[10,[[43,[129]],25]]]],[[[112,[114,130]],127,128,121],[[10,[[43,[129]],25]]]],[[[109,[114]],121,101,[131,[42]]],[[10,[43,123]]]],[[117,20],[[10,[91]]]],[[118,20],[[10,[91]]]],[[109,20],[[10,[91]]]],[[109,20],[[10,[91]]]],[[119,20],[[10,[91]]]],[[120,20],[[10,[91]]]],[[112,20],[[10,[91]]]],[[112,20],[[10,[91]]]],[109,17],[112,17],[[]],[[]],[132,109],[133,109],[134,109],[135,109],[136,109],[137,109],[[]],[[]],[[]],[[]],[113,[[10,[112,29]]]],[50,[[10,[109,29]]]],[50,[[10,[112,29]]]],[[50,125],[[10,[112,29]]]],[50,[[10,[112,29]]]],[138,[[10,[109,29]]]],[138,[[10,[112,29]]]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[112,6],[[43,[112]]]],[[112,6],43],[109,[[10,[29]]]],[109,[[10,[29]]]],[112,17],[112,17],[[[109,[114]]],17],[117],[118],[109],[119],[120],[112],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[112,113],[[121,77],[[10,[25]]]],[[139,121,77],[[10,[25]]]],[[[109,[114]]],17],[112,17],[112,140],[112,141],[109,[[10,[142,29]]]],[112,[[10,[142,29]]]],[112,[[10,[143]]]],[[117,121],[[43,[144]]]],[112,[[43,[6]]]],[112,[[43,[6]]]],[112,[[43,[6]]]],[112,[[10,[6,29]]]],[109,[[10,[6,29]]]],[112,[[10,[6,29]]]],[[],50],[[],50],[[],50],[[[112,[145]]],[[10,[109,29]]]],[[],109],[[],109],[[[112,[119]]],[[10,[109,29]]]],[[6,[9,[8]]],[[10,[109,29]]]],[132,109],[137,109],[[],[[10,[109,29]]]],[[[112,[120]]],[[10,[109,29]]]],[[6,[9,[8]]],[[10,[109,29]]]],[[[43,[146]]],[[10,[109,29]]]],[[],[[10,[109,29]]]],[[[112,[120]]],[[10,[109,29]]]],[[6,[9,[8]]],[[10,[109,29]]]],0,0,[112,[[10,[29]]]],[101,[[10,[112,29]]]],[[121,50],[[10,[29]]]],[101,[[10,[112,29]]]],[[101,125],[[10,[112,29]]]],[[117,117],[[43,[16]]]],[[118,118],[[43,[16]]]],[[109,109],[[43,[16]]]],[[119,119],[[43,[16]]]],[[120,120],[[43,[16]]]],[[112,112],[[43,[16]]]],[[],6],[[],6],[[],6],0,[112,17],[109,[[10,[29]]]],[112,[[10,[126]]]],[[109,147],[[10,[29]]]],[112,[[10,[[9,[[9,[3,8]],8]],29]]]],[112,[[10,[[9,[[9,[3,8]],8]],29]]]],[109,[[10,[101,29]]]],[109,101],[112,6],[109,10],[112,10],[[],148],[[],148],[[],148],0,[[]],[[]],[[]],[[]],[[]],[[]],[[],47],[[],47],[[[109,[114]],149],47],[112,[[10,[29]]]],[112,[[10,[29]]]],[109,10],[112,10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[109,101],[[]],[[]],[[]],[[]],[[]],[[]],0,[112,17],0,[50,[[10,[47,25]]]],[50,[[10,[25]]]],[50,[[10,[47,25]]]],[50,[[10,[25]]]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[6],[6],[6],[[25,20],21],[[25,20],21],[37,25],[32,25],[150,25],[29,25],[151,25],[[]],[24,25],[22,25],[[],6],[[]],[45],[[],47],[[],10],[[],10],[[],49],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[152,152],[153,153],[154,154],[129,129],[155,155],[128,128],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],155],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[152,152],17],[[153,153],17],[[154,154],17],[[129,129],17],[[155,155],17],[[22,22],17],[[152,20],21],[[153,20],21],[[154,20],21],[[129,20],21],[[155,20],21],[[22,20],21],[[22,20],21],[[128,20],21],[[]],[[]],[17,154],[[]],[[]],[153,129],[[]],[[]],[[]],[[129,156],[[10,[155,22]]]],[[],18],[[],18],[152],[155],[153,47],0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[153,17],[154,17],[155,17],0,[[155,155],[[43,[16]]]],[45],[129,17],0,[152,10],[153,10],[154,10],[129,10],[155,10],0,[[]],[[]],[[]],[[]],[[]],[[]],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[77,[[10,[157,25]]]],[[[159,[[158,[119]]]],77],[[10,[157,25]]]],[[[160,[[158,[120]]]],77],[[10,[157,25]]]],[[[161,[[158,[120]]]],77],[[10,[157,25]]]],[[[163,[[162,[119]]]],77],[[10,[157,25]]]],[[[164,[[162,[119]]]],77],[[10,[157,25]]]],[[[165,[[162,[120]]]],77],[[10,[157,25]]]],[[[166,[[162,[120]]]],77],[[10,[157,25]]]],[[[167,[[162,[120]]]],77],[[10,[157,25]]]],[[[168,[[162,[120]]]],77],[[10,[157,25]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[157,121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[121,77],[[10,[25]]]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],169],[[],111],[[114,42],115],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[112,[[10,[116]]]],[113,[[10,[116]]]],[[],[[10,[116]]]],[[[171,[170,130]]],[[171,[170,130]]]],[172,172],[114,114],[173,173],[174,174],[111,111],[175,175],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[172,172],16],[[114,114],16],[[173,173],16],[[174,174],16],0,[[],175],[6],[6],[[[171,[130]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[114,42],115],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[172,101],[[172,172],17],[[114,114],17],[[173,173],17],[[174,174],17],[[111,111],17],[[172,20],[[10,[91]]]],[[172,20],[[10,[91]]]],[[114,20],[[10,[91]]]],[[114,20],[[10,[91]]]],[[176,20],[[10,[91]]]],[[176,20],[[10,[91]]]],[[173,20],[[10,[91]]]],[[177,20],[[10,[91]]]],[[174,20],[[10,[91]]]],[[[179,[[0,[178,130]]]],20],21],[[111,20],21],[[175,20],21],[[32,20],21],[[32,20],21],[172,17],[180,[[181,[130]]]],[182,[[181,[130]]]],[[]],[[]],[[]],[115,114],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[29,32],[37,32],[[114,169],[[179,[130]]]],[[176,169],[[179,[130]]]],[50,[[10,[114]]]],[50,[[10,[176]]]],[138,[[10,[172,29]]]],[114,144],[[],[[10,[171]]]],[[],[[10,[171]]]],[[],[[10,[171]]]],[[],[[10,[171]]]],[[],18],[[],18],[[],18],[[],18],[[[181,[130]]],17],[114,17],[172],[114],[173],[174],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[10,[179,32]]]],[[[43,[183]],144],[[10,[179,32]]]],[171,[[10,[179,32]]]],[[171,[43,[183]],144],[[10,[179,32]]]],[114,[[10,[[179,[130]],32]]]],[176,[[10,[[179,[130]],32]]]],[[[179,[130]]],[[10,[[179,[130]],32]]]],[[],[[10,[181,32]]]],[[[181,[130]]],[[10,[[181,[130]],32]]]],[171,[[10,[181,32]]]],[[[171,[130]]]],[[[181,[130]],77],[[43,[182]]]],[[[181,[130]],77,121],180],[114,17],[[],17],[111,17],[[],17],[111,17],[[],17],[111,17],[114,17],[114,17],0,0,0,[172,[[10,[142,29]]]],[[],169],[114,184],[112,[[43,[6]]]],[172,6],[172,6],[[169,169],169],[[],50],[[6,[9,[8]]],[[10,[172,29]]]],0,0,[112,[[10,[29]]]],[[[179,[130]],169],[[179,[130]]]],[[172,172],[[43,[16]]]],[[114,114],[[43,[16]]]],[[173,173],[[43,[16]]]],[[174,174],[[43,[16]]]],[[],6],0,[45],[172,[[10,[29]]]],[172,[[10,[[9,[[9,[3,8]],8]],29]]]],[172,6],[[],148],[172,113],[[],169],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[176,121],[[10,[114,185]]]],[[],47],[[],47],[[],47],[[],47],[112,[[10,[29]]]],[112,[[10,[29]]]],[172,[[10,[172]]]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[186,186],[187,187],[188,188],[[]],[[]],[[]],[[186,186],16],[[188,188],16],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[10,[188]]]],[6],[6],[6],[6],[[186,186],17],[[187,187],17],[[188,188],17],[[186,20],[[10,[91]]]],[[186,20],[[10,[91]]]],[[187,20],[[10,[91]]]],[[187,20],[[10,[91]]]],[[188,20],[[10,[91]]]],[[188,20],[[10,[91]]]],[[]],[[]],[[]],[[]],[[],[[10,[188,187]]]],[186,[[10,[188,187]]]],[50,[[10,[188,187]]]],[[186,6],[[10,[188,187]]]],[[],[[10,[[171,[188,130]]]]]],[[],18],[[],18],[186],[188],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[188,[43,[183]],144],[[10,[[179,[130]],32]]]],[[189,[43,[183]],144],[[10,[[179,[130]],32]]]],[188,[[10,[[181,[130]],32]]]],[189,[[10,[[181,[130]],32]]]],[188,186],[[],[[10,[186,187]]]],[[],[[10,[188,187]]]],[186,[[10,[188,187]]]],[[186,50],[[10,[188,187]]]],[50,[[10,[188,187]]]],[[186,186],[[43,[16]]]],[[188,188],[[43,[16]]]],[45],[188,10],[188,[[9,[3,8]]]],[188],[[]],[[]],[[]],[188],[[188,50]],[[],47],[[],47],[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[188,6],[188,[[0,[46,170]]]],[[186,50]],0,[[],[[43,[18]]]],[[],[[43,[4]]]],[6,[[43,[48]]]],0,0,0,0,0,0,0,0,0,[[52,2,190,[76,[191]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[52,58],[[10,[[194,[192,193]],19]]]],[52,[[194,[192,195]]]],0,[52,196],[[],59],[6],[6],[6],[197],[6],[6],[6],[6],[6],[[52,2],47],[6],[6],[6],[6],[[52,42],[[10,[17,19]]]],[[197,197],17],0,[[52,198,199],[[10,[17,19]]]],[[[52,[178]],20],21],[[200,20],21],[[197,20],21],[[197,20],21],[[59,20],21],[[]],[[]],[[]],[[]],[[52,200],[[10,[197,19]]]],[52,[[10,[1,19]]]],[[52,2],139],[50],[[52,200],[[10,[197,19]]]],[[52,11,[43,[201]],17],[[10,[202,19]]]],[[52,2],[[76,[127]]]],[[52,58,17],[[10,[[43,[14]],19]]]],[[52,44],[[10,[[43,[11]],19]]]],0,0,[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[101,17],[[52,101],[[10,[17,19]]]],0,[[52,17],[[10,[[9,[14]],19]]]],[52,[[10,[[9,[11]],19]]]],[52,77],[[203,[43,[203]],77],[[10,[52,19]]]],[[203,[43,[203]],77],[[10,[52,19]]]],[[52,2],[[10,[[43,[129]],19]]]],0,[[52,2],[[10,[[43,[139]],19]]]],[52,121],[[52,198,199],[[10,[17,19]]]],0,[[52,59],[[10,[19]]]],0,[[],47],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,[[],49],[[],49],[[],49],[[],49],0,[[]],[[]],[[]],[[]],[[43,77,121],[[10,[47,19]]]],0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[204,204],[205,205],[[]],[[]],[[[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[204,[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[205,[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[207,[9,[12]],[9,[12]],4,18,101],[[10,[206,19]]]],[[18,4,101],208],[[],204],[[],205],[[],207],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[208,20],21],[[206,20],21],[[204,20],21],[[205,20],21],[[207,20],21],[[]],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[206,18],[18,207],0,[206,18],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[[]],[[]],[209,[[43,[47]]]],[6],[6],[209,47],[[],[[10,[209]]]],[6],[[52,50,17],[[10,[209,50]]]],[[209,20],21],[[]],[50,[[10,[209]]]],[[],6],[[]],0,[209,10],[209,47],[[],10],[[],10],[[],49],[[]],0,[[]],[[]],[6],[6],[6],[[210,20],21],[[]],[[211,212],[[10,[210,213]]]],[[210,121],214],[[],6],[[]],[[210,198,199,121],[[10,[33]]]],[[],10],[[],10],[[],49],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[127,214,190,[76,[191]]],[[43,[[76,[191]]]]]],0,0,[[127,121],215],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,109,121],127],[214,214],[33,33],[216,216],[[[218,[[0,[170,217,178,170]]]]],[[218,[[0,[170,217,178,170]]]]]],[190,190],[127,127],[199,199],[219,219],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[214,214],16],[[190,190],16],[[],190],[[],127],[[],199],[[],219],[6],[6],[6],[[[218,[[0,[217,178,170]]]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[43,[176]]]],[[[218,[[117,[182]]]]],[[43,[176]]]],[[[218,[220]]],[[43,[176]]]],[6],[6],[6],[6],[6],[6],[6],[6],[[214,214],17],[[33,33],17],[[216,216],17],[[190,190],17],[[219,219],17],[[127,214],[[43,[76]]]],[[214,20],21],[[33,20],21],[[33,20],21],[[216,20],21],[[[218,[[0,[178,217,178,170]]]],20],21],[[190,20],21],[[127,20],21],[[199,20],21],[[219,20],21],[[]],[184,214],[221,214],[[]],[222,33],[213,33],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[214],[121,214],[[[218,[[117,[182]]]],121],214],[[[218,[220]],121],214],[127,[[9,[214]]]],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[217,178,170]],216],[[218,[[0,[217,178,170]]]]]],[[],127],[[214,214],[[43,[16]]]],[[190,190],[[43,[16]]]],[45],[[127,214,190],[[43,[[76,[191]]]]]],0,[[198,6,199,121],[[10,[33]]]],[[[218,[220]],198,6,199,121],[[10,[33]]]],[[[218,[[117,[182]]]],198,6,199,121],[[10,[33]]]],[[198,199,121],[[10,[33]]]],[[198,199,121],[[10,[33]]]],0,[127,[[9,[76]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],47],0,0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[],49],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],18],0,0,0,0,0,0,0,0,0,0,0,0,[[[194,[223,[224,[223]],195]]],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]],44,202,6],[[10,[[194,[223,[224,[223]],225]],19]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],195]],101,18],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]],44],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],44],[[10,[[194,[223,[224,[223]],225]],19]]]],[[[194,[223,[224,[223]],225]]],[[10,[[194,[223,[224,[223]],225]],19]]]],[[[194,[223,[224,[223]],225]],17],[[194,[223,[224,[223]],225]]]],[[[194,[223,192,193]],101],[[10,[[194,[223,192,193]],19]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[194,[223,[224,[223]],225]],226],[[194,[223,[224,[223]],225]]]],[195,195],[193,193],[[[194,[170]]],[[194,[170]]]],[227,227],[226,226],[[]],[[]],[[]],[[]],[[]],[[227,227],16],[[226,226],16],[[[194,[223,[224,[223]],225]],[224,[223]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],42],[[194,[223,[224,[223]],225]]]],[[],195],[[],193],[[],227],[[],226],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],195]],101],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[6],[6],[6],[6],[6],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],228],[[194,[223,[224,[223]],225]]]],[[227,227],17],[[226,226],17],[[[194,[223,[224,[223]],225]],18],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],4],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]]],[[10,[19]]]],[[195,20],21],[[193,20],21],[[[194,[178,178,178]],20],21],[[227,20],21],[[226,20],21],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[227],[226],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],229],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],227],[[194,[223,[224,[223]],225]]]],[[227,227],[[43,[16]]]],[[226,226],[[43,[16]]]],[[[194,[223,[224,[223]],225]],[156,[47,[9,[6]]]],2],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],195]],9],[[194,[223,[224,[223]],195]]]],[[[194,[223,[224,[223]],225]],201],[[194,[223,[224,[223]],225]]]],[[227,51]],[[]],[[]],[[]],[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],49],[[],49],[[],49],[[],49],[[],49],[[[194,[223,[224,[223]],225]],[9,[44]]],[[194,[223,[224,[223]],225]]]],[[[194,[223,[224,[223]],225]],230],[[194,[223,[224,[223]],225]]]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[]],[[]],[6],[6],[6],[[30,20],21],[[30,20],21],[[]],[231,30],[19,30],[[],6],[[]],[45],[[],47],[[],10],[[],10],[[],49],[51,[[10,[30]]]],[[]]],"p":[[3,"Balance"],[4,"KeychainKind"],[15,"u8"],[3,"FeeRate"],[15,"f32"],[15,"usize"],[3,"u5"],[3,"Global"],[3,"Vec"],[4,"Result"],[3,"LocalUtxo"],[3,"WeightedUtxo"],[4,"Utxo"],[3,"TransactionDetails"],[3,"BlockTime"],[4,"Ordering"],[15,"bool"],[15,"u64"],[4,"Error"],[3,"Formatter"],[6,"Result"],[4,"PolicyError"],[4,"Error"],[4,"Error"],[4,"Error"],[3,"Error"],[4,"Error"],[4,"Error"],[4,"Error"],[4,"VerifyError"],[4,"Error"],[4,"KeyError"],[4,"SignerError"],[4,"EsploraError"],[4,"CompactFiltersError"],[4,"Error"],[4,"Error"],[4,"Error"],[4,"PsbtParseError"],[4,"Error"],[3,"BlockTime"],[15,"u32"],[4,"Option"],[3,"OutPoint"],[3,"Demand"],[8,"Iterator"],[3,"String"],[3,"TxOut"],[3,"TypeId"],[15,"str"],[3,"Transaction"],[3,"Wallet"],[4,"Capability"],[3,"NoopProgress"],[3,"LogProgress"],[3,"BlockHash"],[3,"HashSet"],[3,"Txid"],[3,"SyncOptions"],[3,"RefCell"],[8,"Progress"],[3,"Box"],[4,"AnyBlockchain"],[4,"AnyBlockchainConfig"],[3,"ElectrumBlockchain"],[3,"RpcBlockchain"],[3,"CompactFiltersBlockchain"],[3,"EsploraBlockchain"],[3,"RpcConfig"],[3,"ElectrumBlockchainConfig"],[3,"EsploraBlockchainConfig"],[3,"CompactFiltersBlockchainConfig"],[3,"Mempool"],[3,"BitcoinPeerConfig"],[8,"ToSocketAddrs"],[3,"Arc"],[4,"Network"],[3,"Peer"],[8,"ToTargetAddr"],[3,"Error"],[3,"SystemTimeError"],[4,"Error"],[3,"Error"],[4,"Inventory"],[3,"VersionMessage"],[3,"Path"],[8,"AsRef"],[3,"Duration"],[4,"NetworkMessage"],[3,"Client"],[3,"Error"],[3,"ParseIntError"],[4,"Error"],[3,"Transport"],[3,"BlockingClient"],[3,"RpcBlockchainFactory"],[3,"RpcSyncParams"],[4,"Auth"],[3,"SqliteDatabase"],[3,"SyncTime"],[3,"Script"],[4,"AnyDatabase"],[4,"AnyBatch"],[3,"SledDbConfiguration"],[3,"SqliteDbConfiguration"],[4,"AnyDatabaseConfig"],[3,"Tree"],[3,"MemoryDatabase"],[4,"Descriptor"],[3,"Address"],[4,"ScriptContextEnum"],[3,"Miniscript"],[4,"Terminal"],[4,"DescriptorPublicKey"],[3,"DefiniteDescriptorKey"],[4,"ScriptContextError"],[3,"DescriptorXKey"],[4,"Wildcard"],[4,"Legacy"],[4,"Segwitv0"],[3,"Secp256k1"],[3,"PublicKey"],[4,"ConversionError"],[4,"DescriptorType"],[3,"ExtParams"],[4,"AnalysisError"],[3,"SignersContainer"],[4,"BuildSatisfaction"],[3,"Policy"],[8,"ScriptContext"],[3,"Range"],[3,"Wpkh"],[3,"Tr"],[3,"Sh"],[3,"Bare"],[3,"Pkh"],[3,"Wsh"],[3,"Tree"],[6,"ExtendedDescriptor"],[3,"Iter"],[3,"PkIter"],[4,"Policy"],[4,"LiftError"],[3,"DerivationPath"],[4,"BareCtx"],[4,"TapTree"],[3,"TxIn"],[4,"SigType"],[3,"HashMap"],[4,"Error"],[4,"Error"],[4,"PkOrF"],[4,"SatisfiableItem"],[4,"Satisfaction"],[3,"Condition"],[3,"BTreeMap"],[6,"DescriptorTemplateOut"],[8,"IntoDescriptorKey"],[3,"P2Pkh"],[3,"P2Wpkh_P2Sh"],[3,"P2Wpkh"],[8,"DerivableKey"],[3,"Bip44"],[3,"Bip44Public"],[3,"Bip49"],[3,"Bip49Public"],[3,"Bip84"],[3,"Bip84Public"],[6,"ValidNetworks"],[8,"Clone"],[3,"GeneratedKey"],[3,"SortedMultiVec"],[3,"SinglePub"],[4,"SinglePubKey"],[3,"PrivateKeyGenerateOptions"],[4,"DescriptorSecretKey"],[3,"SinglePriv"],[8,"Debug"],[4,"DescriptorKey"],[3,"ExtendedPubKey"],[4,"ExtendedKey"],[3,"ExtendedPrivKey"],[6,"KeySource"],[3,"Fingerprint"],[3,"DescriptorKeyParseError"],[4,"Language"],[4,"Error"],[3,"Mnemonic"],[6,"MnemonicWithPassphrase"],[3,"SignerOrdering"],[8,"TransactionSigner"],[6,"DefaultCoinSelectionAlgorithm"],[3,"BumpFee"],[3,"TxBuilder"],[3,"CreateTx"],[8,"Deref"],[3,"AddressInfo"],[3,"PartiallySignedTransaction"],[3,"SignOptions"],[4,"AddressIndex"],[3,"PsbtSighashType"],[3,"Input"],[8,"IntoWalletDescriptor"],[3,"LargestFirstCoinSelection"],[3,"OldestFirstCoinSelection"],[3,"CoinSelectionResult"],[3,"BranchAndBoundCoinSelection"],[4,"Excess"],[3,"FullyNodedExport"],[3,"HWISigner"],[3,"HWIDevice"],[4,"HWIChain"],[4,"Error"],[4,"SignerId"],[6,"KeyMap"],[4,"SignerContext"],[8,"Sized"],[3,"SignerWrapper"],[4,"TapLeavesOptions"],[3,"PrivateKey"],[3,"Hash"],[4,"Error"],[8,"BatchDatabase"],[8,"CoinSelectionAlgorithm"],[8,"TxBuilderContext"],[4,"ChangeSpendPolicy"],[4,"TxOrdering"],[3,"Sequence"],[4,"LockTime"],[15,"i32"],[4,"Error"],[8,"Vbytes"],[13,"InsufficientFunds"],[13,"InvalidNetwork"],[13,"FeeRateTooLow"],[13,"FeeTooLow"],[13,"Foreign"],[8,"ConfigurableBlockchain"],[8,"BlockchainFactory"],[8,"Blockchain"],[8,"GetBlockHash"],[8,"GetHeight"],[8,"GetTx"],[8,"WalletSync"],[13,"Cookie"],[13,"UserPass"],[8,"ConfigurableDatabase"],[8,"Database"],[8,"BatchOperations"],[8,"ExtractPolicy"],[13,"PsbtTimelocks"],[13,"Complete"],[13,"Partial"],[13,"PartialComplete"],[13,"Sha256Preimage"],[13,"Hash256Preimage"],[13,"Ripemd160Preimage"],[13,"Hash160Preimage"],[13,"Thresh"],[13,"Multisig"],[13,"AbsoluteTimelock"],[13,"RelativeTimelock"],[8,"DescriptorTemplate"],[8,"GeneratableKey"],[8,"ExtScriptContext"],[8,"GeneratableDefaultOptions"],[4,"WordCount"],[8,"PsbtUtils"],[8,"IsDust"],[13,"Change"],[13,"NoChange"],[8,"SignerCommon"],[8,"InputSigner"],[13,"Tap"]]}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; if (typeof exports !== 'undefined') {exports.searchIndex = searchIndex}; diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html index 7884e47f51..95bdbd1e35 100644 --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html @@ -597,6 +597,26 @@ 596 597 598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -1179,7 +1199,27 @@
     
     impl fmt::Display for CompactFiltersError {
         fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::InvalidResponse => write!(f, "A peer sent an invalid or unexpected response"),
    +            Self::InvalidHeaders => write!(f, "Invalid headers"),
    +            Self::InvalidFilterHeader => write!(f, "Invalid filter header"),
    +            Self::InvalidFilter => write!(f, "Invalid filters"),
    +            Self::MissingBlock => write!(f, "The peer is missing a block in the valid chain"),
    +            Self::BlockHashNotFound => write!(f, "Block hash not found"),
    +            Self::DataCorruption => write!(
    +                f,
    +                "The data stored in the block filters storage are corrupted"
    +            ),
    +            Self::NotConnected => write!(f, "A peer is not connected"),
    +            Self::Timeout => write!(f, "A peer took too long to reply to one of our messages"),
    +            Self::PeerBloomDisabled => write!(f, "Peer doesn't advertise the BLOOM service flag"),
    +            Self::NoPeers => write!(f, "No peers have been specified"),
    +            Self::Db(err) => write!(f, "Internal database error: {}", err),
    +            Self::Io(err) => write!(f, "Internal I/O error: {}", err),
    +            Self::Bip158(err) => write!(f, "Invalid BIP158 filter: {}", err),
    +            Self::Time(err) => write!(f, "Invalid system time: {}", err),
    +            Self::Global(err) => write!(f, "Generic error: {}", err),
    +        }
         }
     }
     
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/mod.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/mod.rs.html
    index 7fb27382dc..cd2bf65780 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/mod.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/blockchain/mod.rs.html
    @@ -390,9 +390,6 @@
     389
     390
     391
    -392
    -393
    -394
     
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -644,11 +641,8 @@ fn sum_of_balances<B: BlockchainFactory>(blockchain_factory: B, wallets: &
         /// operations to build a blockchain for a given wallet, so if a wallet needs to be synced
         /// often it's recommended to use [`BlockchainFactory::build_for_wallet`] to reuse the same
         /// blockchain multiple times.
    -    #[cfg(not(any(target_arch = "wasm32", feature = "async-interface")))]
    -    #[cfg_attr(
    -        docsrs,
    -        doc(cfg(not(any(target_arch = "wasm32", feature = "async-interface"))))
    -    )]
    +    #[cfg(not(feature = "async-interface"))]
    +    #[cfg_attr(docsrs, doc(cfg(not(feature = "async-interface"))))]
         fn sync_wallet<D: BatchDatabase>(
             &self,
             wallet: &Wallet<D>,
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/error.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/error.rs.html
    index aefbcfe264..952313e5f3 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/error.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/error.rs.html
    @@ -66,6 +66,25 @@
     65
     66
     67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
     
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -121,7 +140,26 @@
     
     impl std::fmt::Display for Error {
         fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::InvalidHdKeyPath => write!(f, "Invalid HD key path"),
    +            Self::InvalidDescriptorChecksum => {
    +                write!(f, "The provided descriptor doesn't match its checksum")
    +            }
    +            Self::HardenedDerivationXpub => write!(
    +                f,
    +                "The descriptor contains hardened derivation steps on public extended keys"
    +            ),
    +            Self::Key(err) => write!(f, "Key error: {}", err),
    +            Self::Policy(err) => write!(f, "Policy error: {}", err),
    +            Self::InvalidDescriptorCharacter(char) => {
    +                write!(f, "Invalid descriptor character: {}", char)
    +            }
    +            Self::Bip32(err) => write!(f, "BIP32 error: {}", err),
    +            Self::Base58(err) => write!(f, "Base58 error: {}", err),
    +            Self::Pk(err) => write!(f, "Key-related error: {}", err),
    +            Self::Miniscript(err) => write!(f, "Miniscript error: {}", err),
    +            Self::Hex(err) => write!(f, "Hex decoding error: {}", err),
    +        }
         }
     }
     
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/policy.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/policy.rs.html
    index ca7c78a01e..c96ce826cb 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/policy.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/descriptor/policy.rs.html
    @@ -1875,6 +1875,13 @@
     1874
     1875
     1876
    +1877
    +1878
    +1879
    +1880
    +1881
    +1882
    +1883
     
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -2389,7 +2396,14 @@
     
     impl fmt::Display for PolicyError {
         fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::NotEnoughItemsSelected(err) => write!(f, "Not enought items selected: {}", err),
    +            Self::IndexOutOfRange(index) => write!(f, "Index out of range: {}", index),
    +            Self::AddOnLeaf => write!(f, "Add on leaf"),
    +            Self::AddOnPartialComplete => write!(f, "Add on partial complete"),
    +            Self::MixedTimelockUnits => write!(f, "Mixed timelock units"),
    +            Self::IncompatibleConditions => write!(f, "Incompatible conditions"),
    +        }
         }
     }
     
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html
    index 4f192cf773..f0f85371dc 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html
    @@ -249,6 +249,104 @@
     248
     249
     250
    +251
    +252
    +253
    +254
    +255
    +256
    +257
    +258
    +259
    +260
    +261
    +262
    +263
    +264
    +265
    +266
    +267
    +268
    +269
    +270
    +271
    +272
    +273
    +274
    +275
    +276
    +277
    +278
    +279
    +280
    +281
    +282
    +283
    +284
    +285
    +286
    +287
    +288
    +289
    +290
    +291
    +292
    +293
    +294
    +295
    +296
    +297
    +298
    +299
    +300
    +301
    +302
    +303
    +304
    +305
    +306
    +307
    +308
    +309
    +310
    +311
    +312
    +313
    +314
    +315
    +316
    +317
    +318
    +319
    +320
    +321
    +322
    +323
    +324
    +325
    +326
    +327
    +328
    +329
    +330
    +331
    +332
    +333
    +334
    +335
    +336
    +337
    +338
    +339
    +340
    +341
    +342
    +343
    +344
    +345
    +346
    +347
    +348
     
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -358,7 +456,7 @@
         MiniscriptPsbt(MiniscriptPsbtError),
         /// BIP32 error
         Bip32(bitcoin::util::bip32::Error),
    -    /// An ECDSA error
    +    /// A secp256k1 error
         Secp256k1(bitcoin::secp256k1::Error),
         /// Error serializing or deserializing JSON data
         Json(serde_json::Error),
    @@ -408,6 +506,18 @@
         OutputUpdate(miniscript::psbt::OutputUpdateError),
     }
     
    +impl fmt::Display for MiniscriptPsbtError {
    +    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
    +        match self {
    +            Self::Conversion(err) => write!(f, "Conversion error: {}", err),
    +            Self::UtxoUpdate(err) => write!(f, "UTXO update error: {}", err),
    +            Self::OutputUpdate(err) => write!(f, "Output update error: {}", err),
    +        }
    +    }
    +}
    +
    +impl std::error::Error for MiniscriptPsbtError {}
    +
     /// Represents the last failed [`crate::blockchain::WalletSync`] sync attempt in which we were short
     /// on cached `scriptPubKey`s.
     #[derive(Debug)]
    @@ -420,7 +530,93 @@
     
     impl fmt::Display for Error {
         fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::InvalidU32Bytes(_) => write!(
    +                f,
    +                "Wrong number of bytes found when trying to convert to u32"
    +            ),
    +            Self::Generic(err) => write!(f, "Generic error: {}", err),
    +            Self::ScriptDoesntHaveAddressForm => write!(f, "Script doesn't have address form"),
    +            Self::NoRecipients => write!(f, "Cannot build tx without recipients"),
    +            Self::NoUtxosSelected => write!(f, "No UTXO selected"),
    +            Self::OutputBelowDustLimit(limit) => {
    +                write!(f, "Output below the dust limit: {}", limit)
    +            }
    +            Self::InsufficientFunds { needed, available } => write!(
    +                f,
    +                "Insufficient funds: {} sat available of {} sat needed",
    +                available, needed
    +            ),
    +            Self::BnBTotalTriesExceeded => {
    +                write!(f, "Branch and bound coin selection: total tries exceeded")
    +            }
    +            Self::BnBNoExactMatch => write!(f, "Branch and bound coin selection: not exact match"),
    +            Self::UnknownUtxo => write!(f, "UTXO not found in the internal database"),
    +            Self::TransactionNotFound => {
    +                write!(f, "Transaction not found in the internal database")
    +            }
    +            Self::TransactionConfirmed => write!(f, "Transaction already confirmed"),
    +            Self::IrreplaceableTransaction => write!(f, "Transaction can't be replaced"),
    +            Self::FeeRateTooLow { required } => write!(
    +                f,
    +                "Fee rate too low: required {} sat/vbyte",
    +                required.as_sat_per_vb()
    +            ),
    +            Self::FeeTooLow { required } => write!(f, "Fee to low: required {} sat", required),
    +            Self::FeeRateUnavailable => write!(f, "Fee rate unavailable"),
    +            Self::MissingKeyOrigin(err) => write!(f, "Missing key origin: {}", err),
    +            Self::Key(err) => write!(f, "Key error: {}", err),
    +            Self::ChecksumMismatch => write!(f, "Descriptor checksum mismatch"),
    +            Self::SpendingPolicyRequired(keychain_kind) => {
    +                write!(f, "Spending policy required: {:?}", keychain_kind)
    +            }
    +            Self::InvalidPolicyPathError(err) => write!(f, "Invalid policy path: {}", err),
    +            Self::Signer(err) => write!(f, "Signer error: {}", err),
    +            Self::InvalidNetwork { requested, found } => write!(
    +                f,
    +                "Invalid network: requested {} but found {}",
    +                requested, found
    +            ),
    +            #[cfg(feature = "verify")]
    +            Self::Verification(err) => write!(f, "Transaction verification error: {}", err),
    +            Self::InvalidProgressValue(progress) => {
    +                write!(f, "Invalid progress value: {}", progress)
    +            }
    +            Self::ProgressUpdateError => write!(
    +                f,
    +                "Progress update error (maybe the channel has been closed)"
    +            ),
    +            Self::InvalidOutpoint(outpoint) => write!(
    +                f,
    +                "Requested outpoint doesn't exist in the tx: {}",
    +                outpoint
    +            ),
    +            Self::Descriptor(err) => write!(f, "Descriptor error: {}", err),
    +            Self::Encode(err) => write!(f, "Encoding error: {}", err),
    +            Self::Miniscript(err) => write!(f, "Miniscript error: {}", err),
    +            Self::MiniscriptPsbt(err) => write!(f, "Miniscript PSBT error: {}", err),
    +            Self::Bip32(err) => write!(f, "BIP32 error: {}", err),
    +            Self::Secp256k1(err) => write!(f, "Secp256k1 error: {}", err),
    +            Self::Json(err) => write!(f, "Serialize/Deserialize JSON error: {}", err),
    +            Self::Hex(err) => write!(f, "Hex decoding error: {}", err),
    +            Self::Psbt(err) => write!(f, "PSBT error: {}", err),
    +            Self::PsbtParse(err) => write!(f, "Impossible to parse PSBT: {}", err),
    +            Self::MissingCachedScripts(missing_cached_scripts) => {
    +                write!(f, "Missing cached scripts: {:?}", missing_cached_scripts)
    +            }
    +            #[cfg(feature = "electrum")]
    +            Self::Electrum(err) => write!(f, "Electrum client error: {}", err),
    +            #[cfg(feature = "esplora")]
    +            Self::Esplora(err) => write!(f, "Esplora client error: {}", err),
    +            #[cfg(feature = "compact_filters")]
    +            Self::CompactFilters(err) => write!(f, "Compact filters client error: {}", err),
    +            #[cfg(feature = "key-value-db")]
    +            Self::Sled(err) => write!(f, "Sled database error: {}", err),
    +            #[cfg(feature = "rpc")]
    +            Self::Rpc(err) => write!(f, "RPC client error: {}", err),
    +            #[cfg(feature = "sqlite")]
    +            Self::Rusqlite(err) => write!(f, "SQLite error: {}", err),
    +        }
         }
     }
     
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/keys/mod.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/keys/mod.rs.html
    index 8536519a14..5c4dc72ca4 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/keys/mod.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/keys/mod.rs.html
    @@ -986,6 +986,13 @@
     985
     986
     987
    +988
    +989
    +990
    +991
    +992
    +993
    +994
     
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -1923,7 +1930,14 @@ let xprv = xkey.into_xprv(Network::Bitcoin).unwrap();
     
     impl std::fmt::Display for KeyError {
         fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::InvalidScriptContext => write!(f, "Invalid script context"),
    +            Self::InvalidNetwork => write!(f, "Invalid network"),
    +            Self::InvalidChecksum => write!(f, "Invalid checksum"),
    +            Self::Message(err) => write!(f, "{}", err),
    +            Self::Bip32(err) => write!(f, "BIP32 error: {}", err),
    +            Self::Miniscript(err) => write!(f, "Miniscript error: {}", err),
    +        }
         }
     }
     
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/lib.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/lib.rs.html
    index 5c0226ed47..88e6b53030 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/lib.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/lib.rs.html
    @@ -516,7 +516,7 @@ fn main() -> Result<(), bdk::Error> {
     #[cfg(feature = "keys-bip39")]
     extern crate bip39;
     
    -#[cfg(any(target_arch = "wasm32", feature = "async-interface"))]
    +#[cfg(feature = "async-interface")]
     #[macro_use]
     extern crate async_trait;
     #[macro_use]
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html
    index b1aa92c675..411f5ff9e4 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html
    @@ -1123,6 +1123,21 @@
     1122
     1123
     1124
    +1125
    +1126
    +1127
    +1128
    +1129
    +1130
    +1131
    +1132
    +1133
    +1134
    +1135
    +1136
    +1137
    +1138
    +1139
     
    // Bitcoin Dev Kit
     // Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -1305,7 +1320,22 @@
     
     impl fmt::Display for SignerError {
         fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::MissingKey => write!(f, "Missing private key"),
    +            Self::InvalidKey => write!(f, "The private key in use has the right fingerprint but derives differently than expected"),
    +            Self::UserCanceled => write!(f, "The user canceled the operation"),
    +            Self::InputIndexOutOfRange => write!(f, "Input index out of range"),
    +            Self::MissingNonWitnessUtxo => write!(f, "Missing non-witness UTXO"),
    +            Self::InvalidNonWitnessUtxo => write!(f, "Invalid non-witness UTXO"),
    +            Self::MissingWitnessUtxo => write!(f, "Missing witness UTXO"),
    +            Self::MissingWitnessScript => write!(f, "Missing witness script"),
    +            Self::MissingHdKeypath => write!(f, "Missing fingerprint and derivation path"),
    +            Self::NonStandardSighash => write!(f, "The psbt contains a non standard sighash"),
    +            Self::InvalidSighash => write!(f, "Invalid SIGHASH for the signing context in use"),
    +            Self::SighashError(err) => write!(f, "Error while computing the hash to sign: {}", err),
    +            #[cfg(feature = "hardware-signer")]
    +            Self::HWIError(err) => write!(f, "Error while signing using hardware wallets: {}", err),
    +        }
         }
     }
     
    diff --git a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/verify.rs.html b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/verify.rs.html
    index 7d449ef87c..d3bb725e41 100644
    --- a/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/verify.rs.html
    +++ b/docs/.vuepress/public/docs-rs/bdk/nightly/latest/src/bdk/wallet/verify.rs.html
    @@ -160,6 +160,11 @@
     159
     160
     161
    +162
    +163
    +164
    +165
    +166
     
    // Bitcoin Dev Kit
     // Written in 2021 by Alekos Filini <alekos.filini@gmail.com>
     //
    @@ -253,7 +258,12 @@
     
     impl fmt::Display for VerifyError {
         fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
    -        write!(f, "{:?}", self)
    +        match self {
    +            Self::MissingInputTx(txid) => write!(f, "The transaction being spent is not available in the database or the blockchain client: {}", txid),
    +            Self::InvalidInput(outpoint) => write!(f, "The transaction being spent doesn't have the requested output: {}", outpoint),
    +            Self::Consensus(err) => write!(f, "Consensus error: {:?}", err),
    +            Self::Global(err) => write!(f, "Generic error: {}", err),
    +        }
         }
     }