pub use erc4626_target_0::*;
/// This module was auto-generated with ethers-rs Abigen.
/// More information at: <https://github.com/gakonst/ethers-rs>
#[allow(
clippy::enum_variant_names,
clippy::too_many_arguments,
clippy::upper_case_acronyms,
clippy::type_complexity,
dead_code,
non_camel_case_types,
)]
pub mod erc4626_target_0 {
#[allow(deprecated)]
fn __abi() -> ::ethers::core::abi::Abi {
::ethers::core::abi::ethabi::Contract {
constructor: ::core::option::Option::Some(::ethers::core::abi::ethabi::Constructor {
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_config"),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
],
),
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.PoolConfig",
),
),
},
],
}),
functions: ::core::convert::From::from([
(
::std::borrow::ToOwned::to_owned("balanceOf"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("balanceOf"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("baseToken"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("baseToken"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("batchTransferFrom"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("batchTransferFrom"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("from"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("to"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("ids"),
kind: ::ethers::core::abi::ethabi::ParamType::Array(
::std::boxed::Box::new(
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
),
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256[]"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("values"),
kind: ::ethers::core::abi::ethabi::ParamType::Array(
::std::boxed::Box::new(
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
),
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256[]"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("collectGovernanceFee"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned(
"collectGovernanceFee",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_options"),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Bool,
::ethers::core::abi::ethabi::ParamType::Bytes,
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.Options",
),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("proceeds"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("convertToBase"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("convertToBase"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_shareAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("convertToShares"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("convertToShares"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_baseAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("decimals"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("decimals"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(8usize),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint8"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getCheckpoint"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getCheckpoint"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_checkpointTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.Checkpoint",
),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getCheckpointExposure"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned(
"getCheckpointExposure",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_checkpointTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Int(256usize),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("int256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getMarketState"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getMarketState"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Int(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Bool,
::ethers::core::abi::ethabi::ParamType::Bool,
::ethers::core::abi::ethabi::ParamType::Uint(112usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.MarketState",
),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getPoolConfig"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getPoolConfig"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Address,
::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
],
),
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.PoolConfig",
),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getPoolInfo"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getPoolInfo"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Int(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.PoolInfo",
),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getUncollectedGovernanceFees"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned(
"getUncollectedGovernanceFees",
),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("getWithdrawPool"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getWithdrawPool"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
::std::vec![
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
::ethers::core::abi::ethabi::ParamType::Uint(128usize),
],
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned(
"struct IHyperdrive.WithdrawPool",
),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("isApprovedForAll"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("isApprovedForAll"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("operator"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bool"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("isPauser"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("isPauser"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bool"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("kind"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("kind"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::Pure,
},
],
),
(
::std::borrow::ToOwned::to_owned("load"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("load"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_slots"),
kind: ::ethers::core::abi::ethabi::ParamType::Array(
::std::boxed::Box::new(
::ethers::core::abi::ethabi::ParamType::Uint(256usize),
),
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256[]"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Array(
::std::boxed::Box::new(
::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
),
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32[]"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("name"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("name"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::Pure,
},
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("name"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("nonces"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("nonces"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("pause"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("pause"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_status"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bool"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("perTokenApprovals"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("perTokenApprovals"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("spender"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("permitForAll"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("permitForAll"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("domainSeparator"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("permitTypeHash"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("owner"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("spender"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_approved"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bool"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("deadline"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("v"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(8usize),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint8"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("r"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("s"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setApproval"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setApproval"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenID"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("operator"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setApprovalBridge"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setApprovalBridge"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenID"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("operator"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("caller"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setApprovalForAll"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setApprovalForAll"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("operator"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("approved"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bool"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setCheckpointRewarder"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned(
"setCheckpointRewarder",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned(
"_checkpointRewarder",
),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setFeeCollector"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setFeeCollector"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_who"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setGovernance"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setGovernance"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_who"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setPauser"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setPauser"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("who"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("status"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bool"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("setSweepCollector"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("setSweepCollector"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_who"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("sweep"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("sweep"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("_target"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("contract IERC20"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("symbol"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("symbol"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::Pure,
},
],
),
(
::std::borrow::ToOwned::to_owned("totalShares"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("totalShares"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("totalSupply"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("totalSupply"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("transferFrom"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("transferFrom"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenID"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("from"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("to"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("transferFromBridge"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("transferFromBridge"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("tokenID"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("from"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("to"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("uint256"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("caller"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("vaultSharesToken"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("vaultSharesToken"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
},
],
),
(
::std::borrow::ToOwned::to_owned("version"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("version"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::Pure,
},
],
),
]),
events: ::core::convert::From::from([
(
::std::borrow::ToOwned::to_owned("AddLiquidity"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("AddLiquidity"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("provider"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("lpAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("lpSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("Approval"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("Approval"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("owner"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("spender"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("value"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("ApprovalForAll"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("ApprovalForAll"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("operator"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("approved"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("CheckpointRewarderUpdated"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned(
"CheckpointRewarderUpdated",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned(
"newCheckpointRewarder",
),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("CloseLong"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("CloseLong"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("trader"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("destination"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("assetId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("maturityTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("bondAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("CloseShort"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("CloseShort"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("trader"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("destination"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("assetId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("maturityTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("basePayment"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("bondAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("CollectGovernanceFee"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned(
"CollectGovernanceFee",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("collector"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("CreateCheckpoint"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("CreateCheckpoint"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("checkpointTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned(
"checkpointVaultSharePrice",
),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("maturedShorts"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("maturedLongs"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("lpSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("FeeCollectorUpdated"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned(
"FeeCollectorUpdated",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("newFeeCollector"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("GovernanceUpdated"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("GovernanceUpdated"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("newGovernance"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("Initialize"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("Initialize"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("provider"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("lpAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("apr"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("OpenLong"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("OpenLong"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("trader"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("assetId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("maturityTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("bondAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("OpenShort"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("OpenShort"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("trader"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("assetId"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("maturityTime"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("baseProceeds"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("bondAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("PauseStatusUpdated"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("PauseStatusUpdated"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("isPaused"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("PauserUpdated"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("PauserUpdated"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("newPauser"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("status"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("RedeemWithdrawalShares"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned(
"RedeemWithdrawalShares",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("provider"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("destination"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned(
"withdrawalShareAmount",
),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("RemoveLiquidity"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("RemoveLiquidity"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("provider"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("destination"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("lpAmount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("amount"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("vaultSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("asBase"),
kind: ::ethers::core::abi::ethabi::ParamType::Bool,
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned(
"withdrawalShareAmount",
),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("lpSharePrice"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("extraData"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("Sweep"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("Sweep"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("collector"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("target"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("SweepCollectorUpdated"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned(
"SweepCollectorUpdated",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("newSweepCollector"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("TransferSingle"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("TransferSingle"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("operator"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("from"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("to"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("id"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("value"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
],
anonymous: false,
},
],
),
]),
errors: ::core::convert::From::from([
(
::std::borrow::ToOwned::to_owned("AddressEmptyCode"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("AddressEmptyCode"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("target"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
},
],
),
(
::std::borrow::ToOwned::to_owned("AddressInsufficientBalance"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned(
"AddressInsufficientBalance",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
},
],
),
(
::std::borrow::ToOwned::to_owned("BatchInputLengthMismatch"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned(
"BatchInputLengthMismatch",
),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("ExpiredDeadline"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("ExpiredDeadline"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("FailedInnerCall"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("FailedInnerCall"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("InvalidERC20Bridge"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("InvalidERC20Bridge"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("InvalidFeeDestination"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned(
"InvalidFeeDestination",
),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("InvalidSignature"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("InvalidSignature"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("InvalidTimestamp"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("InvalidTimestamp"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("ReentrancyGuardReentrantCall"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned(
"ReentrancyGuardReentrantCall",
),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("RestrictedZeroAddress"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned(
"RestrictedZeroAddress",
),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("ReturnData"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("ReturnData"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("data"),
kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes"),
),
},
],
},
],
),
(
::std::borrow::ToOwned::to_owned("SafeERC20FailedOperation"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned(
"SafeERC20FailedOperation",
),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("token"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("address"),
),
},
],
},
],
),
(
::std::borrow::ToOwned::to_owned("SweepFailed"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("SweepFailed"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("Unauthorized"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("Unauthorized"),
inputs: ::std::vec![],
},
],
),
(
::std::borrow::ToOwned::to_owned("UnsafeCastToInt256"),
::std::vec![
::ethers::core::abi::ethabi::AbiError {
name: ::std::borrow::ToOwned::to_owned("UnsafeCastToInt256"),
inputs: ::std::vec![],
},
],
),
]),
receive: false,
fallback: false,
}
}
///The parsed JSON ABI of the contract.
pub static ERC4626TARGET0_ABI: ::ethers::contract::Lazy<::ethers::core::abi::Abi> = ::ethers::contract::Lazy::new(
__abi,
);
pub struct ERC4626Target0<M>(::ethers::contract::Contract<M>);
impl<M> ::core::clone::Clone for ERC4626Target0<M> {
fn clone(&self) -> Self {
Self(::core::clone::Clone::clone(&self.0))
}
}
impl<M> ::core::ops::Deref for ERC4626Target0<M> {
type Target = ::ethers::contract::Contract<M>;
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl<M> ::core::ops::DerefMut for ERC4626Target0<M> {
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl<M> ::core::fmt::Debug for ERC4626Target0<M> {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple(::core::stringify!(ERC4626Target0))
.field(&self.address())
.finish()
}
}
impl<M: ::ethers::providers::Middleware> ERC4626Target0<M> {
/// Creates a new contract instance with the specified `ethers` client at
/// `address`. The contract derefs to a `ethers::Contract` object.
pub fn new<T: Into<::ethers::core::types::Address>>(
address: T,
client: ::std::sync::Arc<M>,
) -> Self {
Self(
::ethers::contract::Contract::new(
address.into(),
ERC4626TARGET0_ABI.clone(),
client,
),
)
}
///Calls the contract's `balanceOf` (0x3656eec2) function
pub fn balance_of(
&self,
token_id: ::ethers::core::types::U256,
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([54, 86, 238, 194], (token_id, account))
.expect("method not found (this should never happen)")
}
///Calls the contract's `baseToken` (0xc55dae63) function
pub fn base_token(
&self,
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::Address,
> {
self.0
.method_hash([197, 93, 174, 99], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `batchTransferFrom` (0x17fad7fc) function
pub fn batch_transfer_from(
&self,
from: ::ethers::core::types::Address,
to: ::ethers::core::types::Address,
ids: ::std::vec::Vec<::ethers::core::types::U256>,
values: ::std::vec::Vec<::ethers::core::types::U256>,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([23, 250, 215, 252], (from, to, ids, values))
.expect("method not found (this should never happen)")
}
///Calls the contract's `collectGovernanceFee` (0x3e691db9) function
pub fn collect_governance_fee(
&self,
options: Options,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([62, 105, 29, 185], (options,))
.expect("method not found (this should never happen)")
}
///Calls the contract's `convertToBase` (0xb88fed9f) function
pub fn convert_to_base(
&self,
share_amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([184, 143, 237, 159], share_amount)
.expect("method not found (this should never happen)")
}
///Calls the contract's `convertToShares` (0xc6e6f592) function
pub fn convert_to_shares(
&self,
base_amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([198, 230, 245, 146], base_amount)
.expect("method not found (this should never happen)")
}
///Calls the contract's `decimals` (0x313ce567) function
pub fn decimals(&self) -> ::ethers::contract::builders::ContractCall<M, u8> {
self.0
.method_hash([49, 60, 229, 103], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `getCheckpoint` (0x20fc4881) function
pub fn get_checkpoint(
&self,
checkpoint_time: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, Checkpoint> {
self.0
.method_hash([32, 252, 72, 129], checkpoint_time)
.expect("method not found (this should never happen)")
}
///Calls the contract's `getCheckpointExposure` (0xcf210e65) function
pub fn get_checkpoint_exposure(
&self,
checkpoint_time: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::I256> {
self.0
.method_hash([207, 33, 14, 101], checkpoint_time)
.expect("method not found (this should never happen)")
}
///Calls the contract's `getMarketState` (0xd8165743) function
pub fn get_market_state(
&self,
) -> ::ethers::contract::builders::ContractCall<M, MarketState> {
self.0
.method_hash([216, 22, 87, 67], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `getPoolConfig` (0xb0d96580) function
pub fn get_pool_config(
&self,
) -> ::ethers::contract::builders::ContractCall<M, PoolConfig> {
self.0
.method_hash([176, 217, 101, 128], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `getPoolInfo` (0x60246c88) function
pub fn get_pool_info(
&self,
) -> ::ethers::contract::builders::ContractCall<M, PoolInfo> {
self.0
.method_hash([96, 36, 108, 136], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `getUncollectedGovernanceFees` (0xc69e16ad) function
pub fn get_uncollected_governance_fees(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([198, 158, 22, 173], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `getWithdrawPool` (0xfba56008) function
pub fn get_withdraw_pool(
&self,
) -> ::ethers::contract::builders::ContractCall<M, WithdrawPool> {
self.0
.method_hash([251, 165, 96, 8], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `isApprovedForAll` (0xe985e9c5) function
pub fn is_approved_for_all(
&self,
account: ::ethers::core::types::Address,
operator: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([233, 133, 233, 197], (account, operator))
.expect("method not found (this should never happen)")
}
///Calls the contract's `isPauser` (0x46fbf68e) function
pub fn is_pauser(
&self,
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([70, 251, 246, 142], account)
.expect("method not found (this should never happen)")
}
///Calls the contract's `kind` (0x04baa00b) function
pub fn kind(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
self.0
.method_hash([4, 186, 160, 11], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `load` (0xbecee9c3) function
pub fn load(
&self,
slots: ::std::vec::Vec<::ethers::core::types::U256>,
) -> ::ethers::contract::builders::ContractCall<M, ::std::vec::Vec<[u8; 32]>> {
self.0
.method_hash([190, 206, 233, 195], slots)
.expect("method not found (this should never happen)")
}
///Calls the contract's `name` (0x00ad800c) function
pub fn name_with_token_id(
&self,
token_id: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
self.0
.method_hash([0, 173, 128, 12], token_id)
.expect("method not found (this should never happen)")
}
///Calls the contract's `name` (0x06fdde03) function
pub fn name(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
self.0
.method_hash([6, 253, 222, 3], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `nonces` (0x7ecebe00) function
pub fn nonces(
&self,
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([126, 206, 190, 0], account)
.expect("method not found (this should never happen)")
}
///Calls the contract's `pause` (0x02329a29) function
pub fn pause(
&self,
status: bool,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([2, 50, 154, 41], status)
.expect("method not found (this should never happen)")
}
///Calls the contract's `perTokenApprovals` (0x21ff32a9) function
pub fn per_token_approvals(
&self,
token_id: ::ethers::core::types::U256,
account: ::ethers::core::types::Address,
spender: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([33, 255, 50, 169], (token_id, account, spender))
.expect("method not found (this should never happen)")
}
///Calls the contract's `permitForAll` (0x14e5f07b) function
pub fn permit_for_all(
&self,
domain_separator: [u8; 32],
permit_type_hash: [u8; 32],
owner: ::ethers::core::types::Address,
spender: ::ethers::core::types::Address,
approved: bool,
deadline: ::ethers::core::types::U256,
v: u8,
r: [u8; 32],
s: [u8; 32],
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash(
[20, 229, 240, 123],
(
domain_separator,
permit_type_hash,
owner,
spender,
approved,
deadline,
v,
r,
s,
),
)
.expect("method not found (this should never happen)")
}
///Calls the contract's `setApproval` (0x9cd241af) function
pub fn set_approval(
&self,
token_id: ::ethers::core::types::U256,
operator: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([156, 210, 65, 175], (token_id, operator, amount))
.expect("method not found (this should never happen)")
}
///Calls the contract's `setApprovalBridge` (0x4ed2d6ac) function
pub fn set_approval_bridge(
&self,
token_id: ::ethers::core::types::U256,
operator: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
caller: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([78, 210, 214, 172], (token_id, operator, amount, caller))
.expect("method not found (this should never happen)")
}
///Calls the contract's `setApprovalForAll` (0xa22cb465) function
pub fn set_approval_for_all(
&self,
operator: ::ethers::core::types::Address,
approved: bool,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([162, 44, 180, 101], (operator, approved))
.expect("method not found (this should never happen)")
}
///Calls the contract's `setCheckpointRewarder` (0xa5107626) function
pub fn set_checkpoint_rewarder(
&self,
checkpoint_rewarder: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([165, 16, 118, 38], checkpoint_rewarder)
.expect("method not found (this should never happen)")
}
///Calls the contract's `setFeeCollector` (0xa42dce80) function
pub fn set_fee_collector(
&self,
who: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([164, 45, 206, 128], who)
.expect("method not found (this should never happen)")
}
///Calls the contract's `setGovernance` (0xab033ea9) function
pub fn set_governance(
&self,
who: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([171, 3, 62, 169], who)
.expect("method not found (this should never happen)")
}
///Calls the contract's `setPauser` (0x7180c8ca) function
pub fn set_pauser(
&self,
who: ::ethers::core::types::Address,
status: bool,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([113, 128, 200, 202], (who, status))
.expect("method not found (this should never happen)")
}
///Calls the contract's `setSweepCollector` (0xe4af29d1) function
pub fn set_sweep_collector(
&self,
who: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([228, 175, 41, 209], who)
.expect("method not found (this should never happen)")
}
///Calls the contract's `sweep` (0x01681a62) function
pub fn sweep(
&self,
target: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([1, 104, 26, 98], target)
.expect("method not found (this should never happen)")
}
///Calls the contract's `symbol` (0x4e41a1fb) function
pub fn symbol(
&self,
token_id: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
self.0
.method_hash([78, 65, 161, 251], token_id)
.expect("method not found (this should never happen)")
}
///Calls the contract's `totalShares` (0x3a98ef39) function
pub fn total_shares(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([58, 152, 239, 57], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `totalSupply` (0xbd85b039) function
pub fn total_supply(
&self,
token_id: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
self.0
.method_hash([189, 133, 176, 57], token_id)
.expect("method not found (this should never happen)")
}
///Calls the contract's `transferFrom` (0x1c0f12b6) function
pub fn transfer_from(
&self,
token_id: ::ethers::core::types::U256,
from: ::ethers::core::types::Address,
to: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([28, 15, 18, 182], (token_id, from, to, amount))
.expect("method not found (this should never happen)")
}
///Calls the contract's `transferFromBridge` (0xe44808bc) function
pub fn transfer_from_bridge(
&self,
token_id: ::ethers::core::types::U256,
from: ::ethers::core::types::Address,
to: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
caller: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([228, 72, 8, 188], (token_id, from, to, amount, caller))
.expect("method not found (this should never happen)")
}
///Calls the contract's `vaultSharesToken` (0x0a4e1493) function
pub fn vault_shares_token(
&self,
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::Address,
> {
self.0
.method_hash([10, 78, 20, 147], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `version` (0x54fd4d50) function
pub fn version(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
self.0
.method_hash([84, 253, 77, 80], ())
.expect("method not found (this should never happen)")
}
///Gets the contract's `AddLiquidity` event
pub fn add_liquidity_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
AddLiquidityFilter,
> {
self.0.event()
}
///Gets the contract's `Approval` event
pub fn approval_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
ApprovalFilter,
> {
self.0.event()
}
///Gets the contract's `ApprovalForAll` event
pub fn approval_for_all_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
ApprovalForAllFilter,
> {
self.0.event()
}
///Gets the contract's `CheckpointRewarderUpdated` event
pub fn checkpoint_rewarder_updated_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
CheckpointRewarderUpdatedFilter,
> {
self.0.event()
}
///Gets the contract's `CloseLong` event
pub fn close_long_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
CloseLongFilter,
> {
self.0.event()
}
///Gets the contract's `CloseShort` event
pub fn close_short_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
CloseShortFilter,
> {
self.0.event()
}
///Gets the contract's `CollectGovernanceFee` event
pub fn collect_governance_fee_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
CollectGovernanceFeeFilter,
> {
self.0.event()
}
///Gets the contract's `CreateCheckpoint` event
pub fn create_checkpoint_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
CreateCheckpointFilter,
> {
self.0.event()
}
///Gets the contract's `FeeCollectorUpdated` event
pub fn fee_collector_updated_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
FeeCollectorUpdatedFilter,
> {
self.0.event()
}
///Gets the contract's `GovernanceUpdated` event
pub fn governance_updated_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
GovernanceUpdatedFilter,
> {
self.0.event()
}
///Gets the contract's `Initialize` event
pub fn initialize_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
InitializeFilter,
> {
self.0.event()
}
///Gets the contract's `OpenLong` event
pub fn open_long_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
OpenLongFilter,
> {
self.0.event()
}
///Gets the contract's `OpenShort` event
pub fn open_short_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
OpenShortFilter,
> {
self.0.event()
}
///Gets the contract's `PauseStatusUpdated` event
pub fn pause_status_updated_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
PauseStatusUpdatedFilter,
> {
self.0.event()
}
///Gets the contract's `PauserUpdated` event
pub fn pauser_updated_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
PauserUpdatedFilter,
> {
self.0.event()
}
///Gets the contract's `RedeemWithdrawalShares` event
pub fn redeem_withdrawal_shares_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
RedeemWithdrawalSharesFilter,
> {
self.0.event()
}
///Gets the contract's `RemoveLiquidity` event
pub fn remove_liquidity_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
RemoveLiquidityFilter,
> {
self.0.event()
}
///Gets the contract's `Sweep` event
pub fn sweep_filter(
&self,
) -> ::ethers::contract::builders::Event<::std::sync::Arc<M>, M, SweepFilter> {
self.0.event()
}
///Gets the contract's `SweepCollectorUpdated` event
pub fn sweep_collector_updated_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
SweepCollectorUpdatedFilter,
> {
self.0.event()
}
///Gets the contract's `TransferSingle` event
pub fn transfer_single_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
TransferSingleFilter,
> {
self.0.event()
}
/// Returns an `Event` builder for all the events of this contract.
pub fn events(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
ERC4626Target0Events,
> {
self.0.event_with_filter(::core::default::Default::default())
}
}
impl<M: ::ethers::providers::Middleware> From<::ethers::contract::Contract<M>>
for ERC4626Target0<M> {
fn from(contract: ::ethers::contract::Contract<M>) -> Self {
Self::new(contract.address(), contract.client())
}
}
///Custom Error type `AddressEmptyCode` with signature `AddressEmptyCode(address)` and selector `0x9996b315`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "AddressEmptyCode", abi = "AddressEmptyCode(address)")]
pub struct AddressEmptyCode {
pub target: ::ethers::core::types::Address,
}
///Custom Error type `AddressInsufficientBalance` with signature `AddressInsufficientBalance(address)` and selector `0xcd786059`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(
name = "AddressInsufficientBalance",
abi = "AddressInsufficientBalance(address)"
)]
pub struct AddressInsufficientBalance {
pub account: ::ethers::core::types::Address,
}
///Custom Error type `BatchInputLengthMismatch` with signature `BatchInputLengthMismatch()` and selector `0xba430d38`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "BatchInputLengthMismatch", abi = "BatchInputLengthMismatch()")]
pub struct BatchInputLengthMismatch;
///Custom Error type `ExpiredDeadline` with signature `ExpiredDeadline()` and selector `0xf87d9271`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "ExpiredDeadline", abi = "ExpiredDeadline()")]
pub struct ExpiredDeadline;
///Custom Error type `FailedInnerCall` with signature `FailedInnerCall()` and selector `0x1425ea42`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "FailedInnerCall", abi = "FailedInnerCall()")]
pub struct FailedInnerCall;
///Custom Error type `InvalidERC20Bridge` with signature `InvalidERC20Bridge()` and selector `0x2aab8bd3`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "InvalidERC20Bridge", abi = "InvalidERC20Bridge()")]
pub struct InvalidERC20Bridge;
///Custom Error type `InvalidFeeDestination` with signature `InvalidFeeDestination()` and selector `0x2b44eccc`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "InvalidFeeDestination", abi = "InvalidFeeDestination()")]
pub struct InvalidFeeDestination;
///Custom Error type `InvalidSignature` with signature `InvalidSignature()` and selector `0x8baa579f`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "InvalidSignature", abi = "InvalidSignature()")]
pub struct InvalidSignature;
///Custom Error type `InvalidTimestamp` with signature `InvalidTimestamp()` and selector `0xb7d09497`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "InvalidTimestamp", abi = "InvalidTimestamp()")]
pub struct InvalidTimestamp;
///Custom Error type `ReentrancyGuardReentrantCall` with signature `ReentrancyGuardReentrantCall()` and selector `0x3ee5aeb5`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(
name = "ReentrancyGuardReentrantCall",
abi = "ReentrancyGuardReentrantCall()"
)]
pub struct ReentrancyGuardReentrantCall;
///Custom Error type `RestrictedZeroAddress` with signature `RestrictedZeroAddress()` and selector `0xf0dd15fd`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "RestrictedZeroAddress", abi = "RestrictedZeroAddress()")]
pub struct RestrictedZeroAddress;
///Custom Error type `ReturnData` with signature `ReturnData(bytes)` and selector `0xdcc81126`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "ReturnData", abi = "ReturnData(bytes)")]
pub struct ReturnData {
pub data: ::ethers::core::types::Bytes,
}
///Custom Error type `SafeERC20FailedOperation` with signature `SafeERC20FailedOperation(address)` and selector `0x5274afe7`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(
name = "SafeERC20FailedOperation",
abi = "SafeERC20FailedOperation(address)"
)]
pub struct SafeERC20FailedOperation {
pub token: ::ethers::core::types::Address,
}
///Custom Error type `SweepFailed` with signature `SweepFailed()` and selector `0x9eec2ff8`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "SweepFailed", abi = "SweepFailed()")]
pub struct SweepFailed;
///Custom Error type `Unauthorized` with signature `Unauthorized()` and selector `0x82b42900`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "Unauthorized", abi = "Unauthorized()")]
pub struct Unauthorized;
///Custom Error type `UnsafeCastToInt256` with signature `UnsafeCastToInt256()` and selector `0x72dd4e02`
#[derive(
Clone,
::ethers::contract::EthError,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[etherror(name = "UnsafeCastToInt256", abi = "UnsafeCastToInt256()")]
pub struct UnsafeCastToInt256;
///Container type for all of the contract's custom errors
#[derive(
Clone,
::ethers::contract::EthAbiType,
serde::Serialize,
serde::Deserialize,
Debug,
PartialEq,
Eq,
Hash
)]
pub enum ERC4626Target0Errors {
AddressEmptyCode(AddressEmptyCode),
AddressInsufficientBalance(AddressInsufficientBalance),
BatchInputLengthMismatch(BatchInputLengthMismatch),
ExpiredDeadline(ExpiredDeadline),
FailedInnerCall(FailedInnerCall),
InvalidERC20Bridge(InvalidERC20Bridge),
InvalidFeeDestination(InvalidFeeDestination),
InvalidSignature(InvalidSignature),
InvalidTimestamp(InvalidTimestamp),
ReentrancyGuardReentrantCall(ReentrancyGuardReentrantCall),
RestrictedZeroAddress(RestrictedZeroAddress),
ReturnData(ReturnData),
SafeERC20FailedOperation(SafeERC20FailedOperation),
SweepFailed(SweepFailed),
Unauthorized(Unauthorized),
UnsafeCastToInt256(UnsafeCastToInt256),
/// The standard solidity revert string, with selector
/// Error(string) -- 0x08c379a0
RevertString(::std::string::String),
}
impl ::ethers::core::abi::AbiDecode for ERC4626Target0Errors {
fn decode(
data: impl AsRef<[u8]>,
) -> ::core::result::Result<Self, ::ethers::core::abi::AbiError> {
let data = data.as_ref();
if let Ok(decoded) = <::std::string::String as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::RevertString(decoded));
}
if let Ok(decoded) = <AddressEmptyCode as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::AddressEmptyCode(decoded));
}
if let Ok(decoded) = <AddressInsufficientBalance as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::AddressInsufficientBalance(decoded));
}
if let Ok(decoded) = <BatchInputLengthMismatch as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::BatchInputLengthMismatch(decoded));
}
if let Ok(decoded) = <ExpiredDeadline as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::ExpiredDeadline(decoded));
}
if let Ok(decoded) = <FailedInnerCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::FailedInnerCall(decoded));
}
if let Ok(decoded) = <InvalidERC20Bridge as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::InvalidERC20Bridge(decoded));
}
if let Ok(decoded) = <InvalidFeeDestination as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::InvalidFeeDestination(decoded));
}
if let Ok(decoded) = <InvalidSignature as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::InvalidSignature(decoded));
}
if let Ok(decoded) = <InvalidTimestamp as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::InvalidTimestamp(decoded));
}
if let Ok(decoded) = <ReentrancyGuardReentrantCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::ReentrancyGuardReentrantCall(decoded));
}
if let Ok(decoded) = <RestrictedZeroAddress as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::RestrictedZeroAddress(decoded));
}
if let Ok(decoded) = <ReturnData as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::ReturnData(decoded));
}
if let Ok(decoded) = <SafeERC20FailedOperation as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SafeERC20FailedOperation(decoded));
}
if let Ok(decoded) = <SweepFailed as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SweepFailed(decoded));
}
if let Ok(decoded) = <Unauthorized as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Unauthorized(decoded));
}
if let Ok(decoded) = <UnsafeCastToInt256 as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::UnsafeCastToInt256(decoded));
}
Err(::ethers::core::abi::Error::InvalidData.into())
}
}
impl ::ethers::core::abi::AbiEncode for ERC4626Target0Errors {
fn encode(self) -> ::std::vec::Vec<u8> {
match self {
Self::AddressEmptyCode(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::AddressInsufficientBalance(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::BatchInputLengthMismatch(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::ExpiredDeadline(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::FailedInnerCall(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::InvalidERC20Bridge(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::InvalidFeeDestination(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::InvalidSignature(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::InvalidTimestamp(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::ReentrancyGuardReentrantCall(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::RestrictedZeroAddress(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::ReturnData(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SafeERC20FailedOperation(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SweepFailed(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Unauthorized(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::UnsafeCastToInt256(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::RevertString(s) => ::ethers::core::abi::AbiEncode::encode(s),
}
}
}
impl ::ethers::contract::ContractRevert for ERC4626Target0Errors {
fn valid_selector(selector: [u8; 4]) -> bool {
match selector {
[0x08, 0xc3, 0x79, 0xa0] => true,
_ if selector
== <AddressEmptyCode as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <AddressInsufficientBalance as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <BatchInputLengthMismatch as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <ExpiredDeadline as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <FailedInnerCall as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <InvalidERC20Bridge as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <InvalidFeeDestination as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <InvalidSignature as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <InvalidTimestamp as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <ReentrancyGuardReentrantCall as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <RestrictedZeroAddress as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <ReturnData as ::ethers::contract::EthError>::selector() => true,
_ if selector
== <SafeERC20FailedOperation as ::ethers::contract::EthError>::selector() => {
true
}
_ if selector
== <SweepFailed as ::ethers::contract::EthError>::selector() => true,
_ if selector
== <Unauthorized as ::ethers::contract::EthError>::selector() => true,
_ if selector
== <UnsafeCastToInt256 as ::ethers::contract::EthError>::selector() => {
true
}
_ => false,
}
}
}
impl ::core::fmt::Display for ERC4626Target0Errors {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
match self {
Self::AddressEmptyCode(element) => ::core::fmt::Display::fmt(element, f),
Self::AddressInsufficientBalance(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::BatchInputLengthMismatch(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::ExpiredDeadline(element) => ::core::fmt::Display::fmt(element, f),
Self::FailedInnerCall(element) => ::core::fmt::Display::fmt(element, f),
Self::InvalidERC20Bridge(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::InvalidFeeDestination(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::InvalidSignature(element) => ::core::fmt::Display::fmt(element, f),
Self::InvalidTimestamp(element) => ::core::fmt::Display::fmt(element, f),
Self::ReentrancyGuardReentrantCall(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RestrictedZeroAddress(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::ReturnData(element) => ::core::fmt::Display::fmt(element, f),
Self::SafeERC20FailedOperation(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::SweepFailed(element) => ::core::fmt::Display::fmt(element, f),
Self::Unauthorized(element) => ::core::fmt::Display::fmt(element, f),
Self::UnsafeCastToInt256(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RevertString(s) => ::core::fmt::Display::fmt(s, f),
}
}
}
impl ::core::convert::From<::std::string::String> for ERC4626Target0Errors {
fn from(value: String) -> Self {
Self::RevertString(value)
}
}
impl ::core::convert::From<AddressEmptyCode> for ERC4626Target0Errors {
fn from(value: AddressEmptyCode) -> Self {
Self::AddressEmptyCode(value)
}
}
impl ::core::convert::From<AddressInsufficientBalance> for ERC4626Target0Errors {
fn from(value: AddressInsufficientBalance) -> Self {
Self::AddressInsufficientBalance(value)
}
}
impl ::core::convert::From<BatchInputLengthMismatch> for ERC4626Target0Errors {
fn from(value: BatchInputLengthMismatch) -> Self {
Self::BatchInputLengthMismatch(value)
}
}
impl ::core::convert::From<ExpiredDeadline> for ERC4626Target0Errors {
fn from(value: ExpiredDeadline) -> Self {
Self::ExpiredDeadline(value)
}
}
impl ::core::convert::From<FailedInnerCall> for ERC4626Target0Errors {
fn from(value: FailedInnerCall) -> Self {
Self::FailedInnerCall(value)
}
}
impl ::core::convert::From<InvalidERC20Bridge> for ERC4626Target0Errors {
fn from(value: InvalidERC20Bridge) -> Self {
Self::InvalidERC20Bridge(value)
}
}
impl ::core::convert::From<InvalidFeeDestination> for ERC4626Target0Errors {
fn from(value: InvalidFeeDestination) -> Self {
Self::InvalidFeeDestination(value)
}
}
impl ::core::convert::From<InvalidSignature> for ERC4626Target0Errors {
fn from(value: InvalidSignature) -> Self {
Self::InvalidSignature(value)
}
}
impl ::core::convert::From<InvalidTimestamp> for ERC4626Target0Errors {
fn from(value: InvalidTimestamp) -> Self {
Self::InvalidTimestamp(value)
}
}
impl ::core::convert::From<ReentrancyGuardReentrantCall> for ERC4626Target0Errors {
fn from(value: ReentrancyGuardReentrantCall) -> Self {
Self::ReentrancyGuardReentrantCall(value)
}
}
impl ::core::convert::From<RestrictedZeroAddress> for ERC4626Target0Errors {
fn from(value: RestrictedZeroAddress) -> Self {
Self::RestrictedZeroAddress(value)
}
}
impl ::core::convert::From<ReturnData> for ERC4626Target0Errors {
fn from(value: ReturnData) -> Self {
Self::ReturnData(value)
}
}
impl ::core::convert::From<SafeERC20FailedOperation> for ERC4626Target0Errors {
fn from(value: SafeERC20FailedOperation) -> Self {
Self::SafeERC20FailedOperation(value)
}
}
impl ::core::convert::From<SweepFailed> for ERC4626Target0Errors {
fn from(value: SweepFailed) -> Self {
Self::SweepFailed(value)
}
}
impl ::core::convert::From<Unauthorized> for ERC4626Target0Errors {
fn from(value: Unauthorized) -> Self {
Self::Unauthorized(value)
}
}
impl ::core::convert::From<UnsafeCastToInt256> for ERC4626Target0Errors {
fn from(value: UnsafeCastToInt256) -> Self {
Self::UnsafeCastToInt256(value)
}
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "AddLiquidity",
abi = "AddLiquidity(address,uint256,uint256,uint256,bool,uint256,bytes)"
)]
pub struct AddLiquidityFilter {
#[ethevent(indexed)]
pub provider: ::ethers::core::types::Address,
pub lp_amount: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub lp_share_price: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")]
pub struct ApprovalFilter {
#[ethevent(indexed)]
pub owner: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub spender: ::ethers::core::types::Address,
pub value: ::ethers::core::types::U256,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "ApprovalForAll", abi = "ApprovalForAll(address,address,bool)")]
pub struct ApprovalForAllFilter {
#[ethevent(indexed)]
pub account: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub operator: ::ethers::core::types::Address,
pub approved: bool,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "CheckpointRewarderUpdated",
abi = "CheckpointRewarderUpdated(address)"
)]
pub struct CheckpointRewarderUpdatedFilter {
#[ethevent(indexed)]
pub new_checkpoint_rewarder: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "CloseLong",
abi = "CloseLong(address,address,uint256,uint256,uint256,uint256,bool,uint256,bytes)"
)]
pub struct CloseLongFilter {
#[ethevent(indexed)]
pub trader: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub destination: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub asset_id: ::ethers::core::types::U256,
pub maturity_time: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub bond_amount: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "CloseShort",
abi = "CloseShort(address,address,uint256,uint256,uint256,uint256,bool,uint256,uint256,bytes)"
)]
pub struct CloseShortFilter {
#[ethevent(indexed)]
pub trader: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub destination: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub asset_id: ::ethers::core::types::U256,
pub maturity_time: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub base_payment: ::ethers::core::types::U256,
pub bond_amount: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "CollectGovernanceFee",
abi = "CollectGovernanceFee(address,uint256,uint256,bool)"
)]
pub struct CollectGovernanceFeeFilter {
#[ethevent(indexed)]
pub collector: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "CreateCheckpoint",
abi = "CreateCheckpoint(uint256,uint256,uint256,uint256,uint256,uint256)"
)]
pub struct CreateCheckpointFilter {
#[ethevent(indexed)]
pub checkpoint_time: ::ethers::core::types::U256,
pub checkpoint_vault_share_price: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub matured_shorts: ::ethers::core::types::U256,
pub matured_longs: ::ethers::core::types::U256,
pub lp_share_price: ::ethers::core::types::U256,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "FeeCollectorUpdated", abi = "FeeCollectorUpdated(address)")]
pub struct FeeCollectorUpdatedFilter {
#[ethevent(indexed)]
pub new_fee_collector: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "GovernanceUpdated", abi = "GovernanceUpdated(address)")]
pub struct GovernanceUpdatedFilter {
#[ethevent(indexed)]
pub new_governance: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "Initialize",
abi = "Initialize(address,uint256,uint256,uint256,bool,uint256,bytes)"
)]
pub struct InitializeFilter {
#[ethevent(indexed)]
pub provider: ::ethers::core::types::Address,
pub lp_amount: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub apr: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "OpenLong",
abi = "OpenLong(address,uint256,uint256,uint256,uint256,bool,uint256,bytes)"
)]
pub struct OpenLongFilter {
#[ethevent(indexed)]
pub trader: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub asset_id: ::ethers::core::types::U256,
pub maturity_time: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub bond_amount: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "OpenShort",
abi = "OpenShort(address,uint256,uint256,uint256,uint256,bool,uint256,uint256,bytes)"
)]
pub struct OpenShortFilter {
#[ethevent(indexed)]
pub trader: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub asset_id: ::ethers::core::types::U256,
pub maturity_time: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub base_proceeds: ::ethers::core::types::U256,
pub bond_amount: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "PauseStatusUpdated", abi = "PauseStatusUpdated(bool)")]
pub struct PauseStatusUpdatedFilter {
pub is_paused: bool,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "PauserUpdated", abi = "PauserUpdated(address,bool)")]
pub struct PauserUpdatedFilter {
#[ethevent(indexed)]
pub new_pauser: ::ethers::core::types::Address,
pub status: bool,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "RedeemWithdrawalShares",
abi = "RedeemWithdrawalShares(address,address,uint256,uint256,uint256,bool,bytes)"
)]
pub struct RedeemWithdrawalSharesFilter {
#[ethevent(indexed)]
pub provider: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub destination: ::ethers::core::types::Address,
pub withdrawal_share_amount: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "RemoveLiquidity",
abi = "RemoveLiquidity(address,address,uint256,uint256,uint256,bool,uint256,uint256,bytes)"
)]
pub struct RemoveLiquidityFilter {
#[ethevent(indexed)]
pub provider: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub destination: ::ethers::core::types::Address,
pub lp_amount: ::ethers::core::types::U256,
pub amount: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub as_base: bool,
pub withdrawal_share_amount: ::ethers::core::types::U256,
pub lp_share_price: ::ethers::core::types::U256,
pub extra_data: ::ethers::core::types::Bytes,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "Sweep", abi = "Sweep(address,address)")]
pub struct SweepFilter {
#[ethevent(indexed)]
pub collector: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub target: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(name = "SweepCollectorUpdated", abi = "SweepCollectorUpdated(address)")]
pub struct SweepCollectorUpdatedFilter {
#[ethevent(indexed)]
pub new_sweep_collector: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethevent(
name = "TransferSingle",
abi = "TransferSingle(address,address,address,uint256,uint256)"
)]
pub struct TransferSingleFilter {
#[ethevent(indexed)]
pub operator: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub from: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub to: ::ethers::core::types::Address,
pub id: ::ethers::core::types::U256,
pub value: ::ethers::core::types::U256,
}
///Container type for all of the contract's events
#[derive(
Clone,
::ethers::contract::EthAbiType,
serde::Serialize,
serde::Deserialize,
Debug,
PartialEq,
Eq,
Hash
)]
pub enum ERC4626Target0Events {
AddLiquidityFilter(AddLiquidityFilter),
ApprovalFilter(ApprovalFilter),
ApprovalForAllFilter(ApprovalForAllFilter),
CheckpointRewarderUpdatedFilter(CheckpointRewarderUpdatedFilter),
CloseLongFilter(CloseLongFilter),
CloseShortFilter(CloseShortFilter),
CollectGovernanceFeeFilter(CollectGovernanceFeeFilter),
CreateCheckpointFilter(CreateCheckpointFilter),
FeeCollectorUpdatedFilter(FeeCollectorUpdatedFilter),
GovernanceUpdatedFilter(GovernanceUpdatedFilter),
InitializeFilter(InitializeFilter),
OpenLongFilter(OpenLongFilter),
OpenShortFilter(OpenShortFilter),
PauseStatusUpdatedFilter(PauseStatusUpdatedFilter),
PauserUpdatedFilter(PauserUpdatedFilter),
RedeemWithdrawalSharesFilter(RedeemWithdrawalSharesFilter),
RemoveLiquidityFilter(RemoveLiquidityFilter),
SweepFilter(SweepFilter),
SweepCollectorUpdatedFilter(SweepCollectorUpdatedFilter),
TransferSingleFilter(TransferSingleFilter),
}
impl ::ethers::contract::EthLogDecode for ERC4626Target0Events {
fn decode_log(
log: &::ethers::core::abi::RawLog,
) -> ::core::result::Result<Self, ::ethers::core::abi::Error> {
if let Ok(decoded) = AddLiquidityFilter::decode_log(log) {
return Ok(ERC4626Target0Events::AddLiquidityFilter(decoded));
}
if let Ok(decoded) = ApprovalFilter::decode_log(log) {
return Ok(ERC4626Target0Events::ApprovalFilter(decoded));
}
if let Ok(decoded) = ApprovalForAllFilter::decode_log(log) {
return Ok(ERC4626Target0Events::ApprovalForAllFilter(decoded));
}
if let Ok(decoded) = CheckpointRewarderUpdatedFilter::decode_log(log) {
return Ok(
ERC4626Target0Events::CheckpointRewarderUpdatedFilter(decoded),
);
}
if let Ok(decoded) = CloseLongFilter::decode_log(log) {
return Ok(ERC4626Target0Events::CloseLongFilter(decoded));
}
if let Ok(decoded) = CloseShortFilter::decode_log(log) {
return Ok(ERC4626Target0Events::CloseShortFilter(decoded));
}
if let Ok(decoded) = CollectGovernanceFeeFilter::decode_log(log) {
return Ok(ERC4626Target0Events::CollectGovernanceFeeFilter(decoded));
}
if let Ok(decoded) = CreateCheckpointFilter::decode_log(log) {
return Ok(ERC4626Target0Events::CreateCheckpointFilter(decoded));
}
if let Ok(decoded) = FeeCollectorUpdatedFilter::decode_log(log) {
return Ok(ERC4626Target0Events::FeeCollectorUpdatedFilter(decoded));
}
if let Ok(decoded) = GovernanceUpdatedFilter::decode_log(log) {
return Ok(ERC4626Target0Events::GovernanceUpdatedFilter(decoded));
}
if let Ok(decoded) = InitializeFilter::decode_log(log) {
return Ok(ERC4626Target0Events::InitializeFilter(decoded));
}
if let Ok(decoded) = OpenLongFilter::decode_log(log) {
return Ok(ERC4626Target0Events::OpenLongFilter(decoded));
}
if let Ok(decoded) = OpenShortFilter::decode_log(log) {
return Ok(ERC4626Target0Events::OpenShortFilter(decoded));
}
if let Ok(decoded) = PauseStatusUpdatedFilter::decode_log(log) {
return Ok(ERC4626Target0Events::PauseStatusUpdatedFilter(decoded));
}
if let Ok(decoded) = PauserUpdatedFilter::decode_log(log) {
return Ok(ERC4626Target0Events::PauserUpdatedFilter(decoded));
}
if let Ok(decoded) = RedeemWithdrawalSharesFilter::decode_log(log) {
return Ok(ERC4626Target0Events::RedeemWithdrawalSharesFilter(decoded));
}
if let Ok(decoded) = RemoveLiquidityFilter::decode_log(log) {
return Ok(ERC4626Target0Events::RemoveLiquidityFilter(decoded));
}
if let Ok(decoded) = SweepFilter::decode_log(log) {
return Ok(ERC4626Target0Events::SweepFilter(decoded));
}
if let Ok(decoded) = SweepCollectorUpdatedFilter::decode_log(log) {
return Ok(ERC4626Target0Events::SweepCollectorUpdatedFilter(decoded));
}
if let Ok(decoded) = TransferSingleFilter::decode_log(log) {
return Ok(ERC4626Target0Events::TransferSingleFilter(decoded));
}
Err(::ethers::core::abi::Error::InvalidData)
}
}
impl ::core::fmt::Display for ERC4626Target0Events {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
match self {
Self::AddLiquidityFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::ApprovalFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::ApprovalForAllFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::CheckpointRewarderUpdatedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::CloseLongFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::CloseShortFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::CollectGovernanceFeeFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::CreateCheckpointFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::FeeCollectorUpdatedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GovernanceUpdatedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::InitializeFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::OpenLongFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::OpenShortFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::PauseStatusUpdatedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::PauserUpdatedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RedeemWithdrawalSharesFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RemoveLiquidityFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::SweepFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::SweepCollectorUpdatedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::TransferSingleFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
}
}
}
impl ::core::convert::From<AddLiquidityFilter> for ERC4626Target0Events {
fn from(value: AddLiquidityFilter) -> Self {
Self::AddLiquidityFilter(value)
}
}
impl ::core::convert::From<ApprovalFilter> for ERC4626Target0Events {
fn from(value: ApprovalFilter) -> Self {
Self::ApprovalFilter(value)
}
}
impl ::core::convert::From<ApprovalForAllFilter> for ERC4626Target0Events {
fn from(value: ApprovalForAllFilter) -> Self {
Self::ApprovalForAllFilter(value)
}
}
impl ::core::convert::From<CheckpointRewarderUpdatedFilter>
for ERC4626Target0Events {
fn from(value: CheckpointRewarderUpdatedFilter) -> Self {
Self::CheckpointRewarderUpdatedFilter(value)
}
}
impl ::core::convert::From<CloseLongFilter> for ERC4626Target0Events {
fn from(value: CloseLongFilter) -> Self {
Self::CloseLongFilter(value)
}
}
impl ::core::convert::From<CloseShortFilter> for ERC4626Target0Events {
fn from(value: CloseShortFilter) -> Self {
Self::CloseShortFilter(value)
}
}
impl ::core::convert::From<CollectGovernanceFeeFilter> for ERC4626Target0Events {
fn from(value: CollectGovernanceFeeFilter) -> Self {
Self::CollectGovernanceFeeFilter(value)
}
}
impl ::core::convert::From<CreateCheckpointFilter> for ERC4626Target0Events {
fn from(value: CreateCheckpointFilter) -> Self {
Self::CreateCheckpointFilter(value)
}
}
impl ::core::convert::From<FeeCollectorUpdatedFilter> for ERC4626Target0Events {
fn from(value: FeeCollectorUpdatedFilter) -> Self {
Self::FeeCollectorUpdatedFilter(value)
}
}
impl ::core::convert::From<GovernanceUpdatedFilter> for ERC4626Target0Events {
fn from(value: GovernanceUpdatedFilter) -> Self {
Self::GovernanceUpdatedFilter(value)
}
}
impl ::core::convert::From<InitializeFilter> for ERC4626Target0Events {
fn from(value: InitializeFilter) -> Self {
Self::InitializeFilter(value)
}
}
impl ::core::convert::From<OpenLongFilter> for ERC4626Target0Events {
fn from(value: OpenLongFilter) -> Self {
Self::OpenLongFilter(value)
}
}
impl ::core::convert::From<OpenShortFilter> for ERC4626Target0Events {
fn from(value: OpenShortFilter) -> Self {
Self::OpenShortFilter(value)
}
}
impl ::core::convert::From<PauseStatusUpdatedFilter> for ERC4626Target0Events {
fn from(value: PauseStatusUpdatedFilter) -> Self {
Self::PauseStatusUpdatedFilter(value)
}
}
impl ::core::convert::From<PauserUpdatedFilter> for ERC4626Target0Events {
fn from(value: PauserUpdatedFilter) -> Self {
Self::PauserUpdatedFilter(value)
}
}
impl ::core::convert::From<RedeemWithdrawalSharesFilter> for ERC4626Target0Events {
fn from(value: RedeemWithdrawalSharesFilter) -> Self {
Self::RedeemWithdrawalSharesFilter(value)
}
}
impl ::core::convert::From<RemoveLiquidityFilter> for ERC4626Target0Events {
fn from(value: RemoveLiquidityFilter) -> Self {
Self::RemoveLiquidityFilter(value)
}
}
impl ::core::convert::From<SweepFilter> for ERC4626Target0Events {
fn from(value: SweepFilter) -> Self {
Self::SweepFilter(value)
}
}
impl ::core::convert::From<SweepCollectorUpdatedFilter> for ERC4626Target0Events {
fn from(value: SweepCollectorUpdatedFilter) -> Self {
Self::SweepCollectorUpdatedFilter(value)
}
}
impl ::core::convert::From<TransferSingleFilter> for ERC4626Target0Events {
fn from(value: TransferSingleFilter) -> Self {
Self::TransferSingleFilter(value)
}
}
///Container type for all input parameters for the `balanceOf` function with signature `balanceOf(uint256,address)` and selector `0x3656eec2`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "balanceOf", abi = "balanceOf(uint256,address)")]
pub struct BalanceOfCall {
pub token_id: ::ethers::core::types::U256,
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `baseToken` function with signature `baseToken()` and selector `0xc55dae63`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "baseToken", abi = "baseToken()")]
pub struct BaseTokenCall;
///Container type for all input parameters for the `batchTransferFrom` function with signature `batchTransferFrom(address,address,uint256[],uint256[])` and selector `0x17fad7fc`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "batchTransferFrom",
abi = "batchTransferFrom(address,address,uint256[],uint256[])"
)]
pub struct BatchTransferFromCall {
pub from: ::ethers::core::types::Address,
pub to: ::ethers::core::types::Address,
pub ids: ::std::vec::Vec<::ethers::core::types::U256>,
pub values: ::std::vec::Vec<::ethers::core::types::U256>,
}
///Container type for all input parameters for the `collectGovernanceFee` function with signature `collectGovernanceFee((address,bool,bytes))` and selector `0x3e691db9`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "collectGovernanceFee",
abi = "collectGovernanceFee((address,bool,bytes))"
)]
pub struct CollectGovernanceFeeCall {
pub options: Options,
}
///Container type for all input parameters for the `convertToBase` function with signature `convertToBase(uint256)` and selector `0xb88fed9f`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "convertToBase", abi = "convertToBase(uint256)")]
pub struct ConvertToBaseCall {
pub share_amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `convertToShares` function with signature `convertToShares(uint256)` and selector `0xc6e6f592`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "convertToShares", abi = "convertToShares(uint256)")]
pub struct ConvertToSharesCall {
pub base_amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `decimals` function with signature `decimals()` and selector `0x313ce567`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "decimals", abi = "decimals()")]
pub struct DecimalsCall;
///Container type for all input parameters for the `getCheckpoint` function with signature `getCheckpoint(uint256)` and selector `0x20fc4881`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "getCheckpoint", abi = "getCheckpoint(uint256)")]
pub struct GetCheckpointCall {
pub checkpoint_time: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `getCheckpointExposure` function with signature `getCheckpointExposure(uint256)` and selector `0xcf210e65`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "getCheckpointExposure", abi = "getCheckpointExposure(uint256)")]
pub struct GetCheckpointExposureCall {
pub checkpoint_time: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `getMarketState` function with signature `getMarketState()` and selector `0xd8165743`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "getMarketState", abi = "getMarketState()")]
pub struct GetMarketStateCall;
///Container type for all input parameters for the `getPoolConfig` function with signature `getPoolConfig()` and selector `0xb0d96580`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "getPoolConfig", abi = "getPoolConfig()")]
pub struct GetPoolConfigCall;
///Container type for all input parameters for the `getPoolInfo` function with signature `getPoolInfo()` and selector `0x60246c88`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "getPoolInfo", abi = "getPoolInfo()")]
pub struct GetPoolInfoCall;
///Container type for all input parameters for the `getUncollectedGovernanceFees` function with signature `getUncollectedGovernanceFees()` and selector `0xc69e16ad`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "getUncollectedGovernanceFees",
abi = "getUncollectedGovernanceFees()"
)]
pub struct GetUncollectedGovernanceFeesCall;
///Container type for all input parameters for the `getWithdrawPool` function with signature `getWithdrawPool()` and selector `0xfba56008`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "getWithdrawPool", abi = "getWithdrawPool()")]
pub struct GetWithdrawPoolCall;
///Container type for all input parameters for the `isApprovedForAll` function with signature `isApprovedForAll(address,address)` and selector `0xe985e9c5`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "isApprovedForAll", abi = "isApprovedForAll(address,address)")]
pub struct IsApprovedForAllCall {
pub account: ::ethers::core::types::Address,
pub operator: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `isPauser` function with signature `isPauser(address)` and selector `0x46fbf68e`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "isPauser", abi = "isPauser(address)")]
pub struct IsPauserCall {
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `kind` function with signature `kind()` and selector `0x04baa00b`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "kind", abi = "kind()")]
pub struct KindCall;
///Container type for all input parameters for the `load` function with signature `load(uint256[])` and selector `0xbecee9c3`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "load", abi = "load(uint256[])")]
pub struct LoadCall {
pub slots: ::std::vec::Vec<::ethers::core::types::U256>,
}
///Container type for all input parameters for the `name` function with signature `name(uint256)` and selector `0x00ad800c`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "name", abi = "name(uint256)")]
pub struct NameWithTokenIdCall {
pub token_id: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `name` function with signature `name()` and selector `0x06fdde03`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "name", abi = "name()")]
pub struct NameCall;
///Container type for all input parameters for the `nonces` function with signature `nonces(address)` and selector `0x7ecebe00`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "nonces", abi = "nonces(address)")]
pub struct NoncesCall {
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `pause` function with signature `pause(bool)` and selector `0x02329a29`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "pause", abi = "pause(bool)")]
pub struct PauseCall {
pub status: bool,
}
///Container type for all input parameters for the `perTokenApprovals` function with signature `perTokenApprovals(uint256,address,address)` and selector `0x21ff32a9`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "perTokenApprovals",
abi = "perTokenApprovals(uint256,address,address)"
)]
pub struct PerTokenApprovalsCall {
pub token_id: ::ethers::core::types::U256,
pub account: ::ethers::core::types::Address,
pub spender: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `permitForAll` function with signature `permitForAll(bytes32,bytes32,address,address,bool,uint256,uint8,bytes32,bytes32)` and selector `0x14e5f07b`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "permitForAll",
abi = "permitForAll(bytes32,bytes32,address,address,bool,uint256,uint8,bytes32,bytes32)"
)]
pub struct PermitForAllCall {
pub domain_separator: [u8; 32],
pub permit_type_hash: [u8; 32],
pub owner: ::ethers::core::types::Address,
pub spender: ::ethers::core::types::Address,
pub approved: bool,
pub deadline: ::ethers::core::types::U256,
pub v: u8,
pub r: [u8; 32],
pub s: [u8; 32],
}
///Container type for all input parameters for the `setApproval` function with signature `setApproval(uint256,address,uint256)` and selector `0x9cd241af`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setApproval", abi = "setApproval(uint256,address,uint256)")]
pub struct SetApprovalCall {
pub token_id: ::ethers::core::types::U256,
pub operator: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `setApprovalBridge` function with signature `setApprovalBridge(uint256,address,uint256,address)` and selector `0x4ed2d6ac`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "setApprovalBridge",
abi = "setApprovalBridge(uint256,address,uint256,address)"
)]
pub struct SetApprovalBridgeCall {
pub token_id: ::ethers::core::types::U256,
pub operator: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
pub caller: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `setApprovalForAll` function with signature `setApprovalForAll(address,bool)` and selector `0xa22cb465`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setApprovalForAll", abi = "setApprovalForAll(address,bool)")]
pub struct SetApprovalForAllCall {
pub operator: ::ethers::core::types::Address,
pub approved: bool,
}
///Container type for all input parameters for the `setCheckpointRewarder` function with signature `setCheckpointRewarder(address)` and selector `0xa5107626`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setCheckpointRewarder", abi = "setCheckpointRewarder(address)")]
pub struct SetCheckpointRewarderCall {
pub checkpoint_rewarder: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `setFeeCollector` function with signature `setFeeCollector(address)` and selector `0xa42dce80`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setFeeCollector", abi = "setFeeCollector(address)")]
pub struct SetFeeCollectorCall {
pub who: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `setGovernance` function with signature `setGovernance(address)` and selector `0xab033ea9`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setGovernance", abi = "setGovernance(address)")]
pub struct SetGovernanceCall {
pub who: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `setPauser` function with signature `setPauser(address,bool)` and selector `0x7180c8ca`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setPauser", abi = "setPauser(address,bool)")]
pub struct SetPauserCall {
pub who: ::ethers::core::types::Address,
pub status: bool,
}
///Container type for all input parameters for the `setSweepCollector` function with signature `setSweepCollector(address)` and selector `0xe4af29d1`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "setSweepCollector", abi = "setSweepCollector(address)")]
pub struct SetSweepCollectorCall {
pub who: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `sweep` function with signature `sweep(address)` and selector `0x01681a62`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "sweep", abi = "sweep(address)")]
pub struct SweepCall {
pub target: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `symbol` function with signature `symbol(uint256)` and selector `0x4e41a1fb`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "symbol", abi = "symbol(uint256)")]
pub struct SymbolCall {
pub token_id: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `totalShares` function with signature `totalShares()` and selector `0x3a98ef39`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "totalShares", abi = "totalShares()")]
pub struct TotalSharesCall;
///Container type for all input parameters for the `totalSupply` function with signature `totalSupply(uint256)` and selector `0xbd85b039`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "totalSupply", abi = "totalSupply(uint256)")]
pub struct TotalSupplyCall {
pub token_id: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `transferFrom` function with signature `transferFrom(uint256,address,address,uint256)` and selector `0x1c0f12b6`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "transferFrom",
abi = "transferFrom(uint256,address,address,uint256)"
)]
pub struct TransferFromCall {
pub token_id: ::ethers::core::types::U256,
pub from: ::ethers::core::types::Address,
pub to: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `transferFromBridge` function with signature `transferFromBridge(uint256,address,address,uint256,address)` and selector `0xe44808bc`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(
name = "transferFromBridge",
abi = "transferFromBridge(uint256,address,address,uint256,address)"
)]
pub struct TransferFromBridgeCall {
pub token_id: ::ethers::core::types::U256,
pub from: ::ethers::core::types::Address,
pub to: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
pub caller: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `vaultSharesToken` function with signature `vaultSharesToken()` and selector `0x0a4e1493`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "vaultSharesToken", abi = "vaultSharesToken()")]
pub struct VaultSharesTokenCall;
///Container type for all input parameters for the `version` function with signature `version()` and selector `0x54fd4d50`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
#[ethcall(name = "version", abi = "version()")]
pub struct VersionCall;
///Container type for all of the contract's call
#[derive(
Clone,
::ethers::contract::EthAbiType,
serde::Serialize,
serde::Deserialize,
Debug,
PartialEq,
Eq,
Hash
)]
pub enum ERC4626Target0Calls {
BalanceOf(BalanceOfCall),
BaseToken(BaseTokenCall),
BatchTransferFrom(BatchTransferFromCall),
CollectGovernanceFee(CollectGovernanceFeeCall),
ConvertToBase(ConvertToBaseCall),
ConvertToShares(ConvertToSharesCall),
Decimals(DecimalsCall),
GetCheckpoint(GetCheckpointCall),
GetCheckpointExposure(GetCheckpointExposureCall),
GetMarketState(GetMarketStateCall),
GetPoolConfig(GetPoolConfigCall),
GetPoolInfo(GetPoolInfoCall),
GetUncollectedGovernanceFees(GetUncollectedGovernanceFeesCall),
GetWithdrawPool(GetWithdrawPoolCall),
IsApprovedForAll(IsApprovedForAllCall),
IsPauser(IsPauserCall),
Kind(KindCall),
Load(LoadCall),
NameWithTokenId(NameWithTokenIdCall),
Name(NameCall),
Nonces(NoncesCall),
Pause(PauseCall),
PerTokenApprovals(PerTokenApprovalsCall),
PermitForAll(PermitForAllCall),
SetApproval(SetApprovalCall),
SetApprovalBridge(SetApprovalBridgeCall),
SetApprovalForAll(SetApprovalForAllCall),
SetCheckpointRewarder(SetCheckpointRewarderCall),
SetFeeCollector(SetFeeCollectorCall),
SetGovernance(SetGovernanceCall),
SetPauser(SetPauserCall),
SetSweepCollector(SetSweepCollectorCall),
Sweep(SweepCall),
Symbol(SymbolCall),
TotalShares(TotalSharesCall),
TotalSupply(TotalSupplyCall),
TransferFrom(TransferFromCall),
TransferFromBridge(TransferFromBridgeCall),
VaultSharesToken(VaultSharesTokenCall),
Version(VersionCall),
}
impl ::ethers::core::abi::AbiDecode for ERC4626Target0Calls {
fn decode(
data: impl AsRef<[u8]>,
) -> ::core::result::Result<Self, ::ethers::core::abi::AbiError> {
let data = data.as_ref();
if let Ok(decoded) = <BalanceOfCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::BalanceOf(decoded));
}
if let Ok(decoded) = <BaseTokenCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::BaseToken(decoded));
}
if let Ok(decoded) = <BatchTransferFromCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::BatchTransferFrom(decoded));
}
if let Ok(decoded) = <CollectGovernanceFeeCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::CollectGovernanceFee(decoded));
}
if let Ok(decoded) = <ConvertToBaseCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::ConvertToBase(decoded));
}
if let Ok(decoded) = <ConvertToSharesCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::ConvertToShares(decoded));
}
if let Ok(decoded) = <DecimalsCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Decimals(decoded));
}
if let Ok(decoded) = <GetCheckpointCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetCheckpoint(decoded));
}
if let Ok(decoded) = <GetCheckpointExposureCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetCheckpointExposure(decoded));
}
if let Ok(decoded) = <GetMarketStateCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetMarketState(decoded));
}
if let Ok(decoded) = <GetPoolConfigCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetPoolConfig(decoded));
}
if let Ok(decoded) = <GetPoolInfoCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetPoolInfo(decoded));
}
if let Ok(decoded) = <GetUncollectedGovernanceFeesCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetUncollectedGovernanceFees(decoded));
}
if let Ok(decoded) = <GetWithdrawPoolCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetWithdrawPool(decoded));
}
if let Ok(decoded) = <IsApprovedForAllCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::IsApprovedForAll(decoded));
}
if let Ok(decoded) = <IsPauserCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::IsPauser(decoded));
}
if let Ok(decoded) = <KindCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Kind(decoded));
}
if let Ok(decoded) = <LoadCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Load(decoded));
}
if let Ok(decoded) = <NameWithTokenIdCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::NameWithTokenId(decoded));
}
if let Ok(decoded) = <NameCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Name(decoded));
}
if let Ok(decoded) = <NoncesCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Nonces(decoded));
}
if let Ok(decoded) = <PauseCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Pause(decoded));
}
if let Ok(decoded) = <PerTokenApprovalsCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::PerTokenApprovals(decoded));
}
if let Ok(decoded) = <PermitForAllCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::PermitForAll(decoded));
}
if let Ok(decoded) = <SetApprovalCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetApproval(decoded));
}
if let Ok(decoded) = <SetApprovalBridgeCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetApprovalBridge(decoded));
}
if let Ok(decoded) = <SetApprovalForAllCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetApprovalForAll(decoded));
}
if let Ok(decoded) = <SetCheckpointRewarderCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetCheckpointRewarder(decoded));
}
if let Ok(decoded) = <SetFeeCollectorCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetFeeCollector(decoded));
}
if let Ok(decoded) = <SetGovernanceCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetGovernance(decoded));
}
if let Ok(decoded) = <SetPauserCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetPauser(decoded));
}
if let Ok(decoded) = <SetSweepCollectorCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SetSweepCollector(decoded));
}
if let Ok(decoded) = <SweepCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Sweep(decoded));
}
if let Ok(decoded) = <SymbolCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Symbol(decoded));
}
if let Ok(decoded) = <TotalSharesCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::TotalShares(decoded));
}
if let Ok(decoded) = <TotalSupplyCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::TotalSupply(decoded));
}
if let Ok(decoded) = <TransferFromCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::TransferFrom(decoded));
}
if let Ok(decoded) = <TransferFromBridgeCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::TransferFromBridge(decoded));
}
if let Ok(decoded) = <VaultSharesTokenCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::VaultSharesToken(decoded));
}
if let Ok(decoded) = <VersionCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::Version(decoded));
}
Err(::ethers::core::abi::Error::InvalidData.into())
}
}
impl ::ethers::core::abi::AbiEncode for ERC4626Target0Calls {
fn encode(self) -> Vec<u8> {
match self {
Self::BalanceOf(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::BaseToken(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::BatchTransferFrom(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::CollectGovernanceFee(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::ConvertToBase(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::ConvertToShares(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Decimals(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetCheckpoint(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetCheckpointExposure(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetMarketState(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetPoolConfig(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetPoolInfo(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetUncollectedGovernanceFees(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetWithdrawPool(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::IsApprovedForAll(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::IsPauser(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Kind(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::Load(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::NameWithTokenId(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Name(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::Nonces(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::Pause(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::PerTokenApprovals(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::PermitForAll(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetApproval(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetApprovalBridge(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetApprovalForAll(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetCheckpointRewarder(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetFeeCollector(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetGovernance(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetPauser(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SetSweepCollector(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Sweep(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::Symbol(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::TotalShares(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::TotalSupply(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::TransferFrom(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::TransferFromBridge(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::VaultSharesToken(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Version(element) => ::ethers::core::abi::AbiEncode::encode(element),
}
}
}
impl ::core::fmt::Display for ERC4626Target0Calls {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
match self {
Self::BalanceOf(element) => ::core::fmt::Display::fmt(element, f),
Self::BaseToken(element) => ::core::fmt::Display::fmt(element, f),
Self::BatchTransferFrom(element) => ::core::fmt::Display::fmt(element, f),
Self::CollectGovernanceFee(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::ConvertToBase(element) => ::core::fmt::Display::fmt(element, f),
Self::ConvertToShares(element) => ::core::fmt::Display::fmt(element, f),
Self::Decimals(element) => ::core::fmt::Display::fmt(element, f),
Self::GetCheckpoint(element) => ::core::fmt::Display::fmt(element, f),
Self::GetCheckpointExposure(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GetMarketState(element) => ::core::fmt::Display::fmt(element, f),
Self::GetPoolConfig(element) => ::core::fmt::Display::fmt(element, f),
Self::GetPoolInfo(element) => ::core::fmt::Display::fmt(element, f),
Self::GetUncollectedGovernanceFees(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GetWithdrawPool(element) => ::core::fmt::Display::fmt(element, f),
Self::IsApprovedForAll(element) => ::core::fmt::Display::fmt(element, f),
Self::IsPauser(element) => ::core::fmt::Display::fmt(element, f),
Self::Kind(element) => ::core::fmt::Display::fmt(element, f),
Self::Load(element) => ::core::fmt::Display::fmt(element, f),
Self::NameWithTokenId(element) => ::core::fmt::Display::fmt(element, f),
Self::Name(element) => ::core::fmt::Display::fmt(element, f),
Self::Nonces(element) => ::core::fmt::Display::fmt(element, f),
Self::Pause(element) => ::core::fmt::Display::fmt(element, f),
Self::PerTokenApprovals(element) => ::core::fmt::Display::fmt(element, f),
Self::PermitForAll(element) => ::core::fmt::Display::fmt(element, f),
Self::SetApproval(element) => ::core::fmt::Display::fmt(element, f),
Self::SetApprovalBridge(element) => ::core::fmt::Display::fmt(element, f),
Self::SetApprovalForAll(element) => ::core::fmt::Display::fmt(element, f),
Self::SetCheckpointRewarder(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::SetFeeCollector(element) => ::core::fmt::Display::fmt(element, f),
Self::SetGovernance(element) => ::core::fmt::Display::fmt(element, f),
Self::SetPauser(element) => ::core::fmt::Display::fmt(element, f),
Self::SetSweepCollector(element) => ::core::fmt::Display::fmt(element, f),
Self::Sweep(element) => ::core::fmt::Display::fmt(element, f),
Self::Symbol(element) => ::core::fmt::Display::fmt(element, f),
Self::TotalShares(element) => ::core::fmt::Display::fmt(element, f),
Self::TotalSupply(element) => ::core::fmt::Display::fmt(element, f),
Self::TransferFrom(element) => ::core::fmt::Display::fmt(element, f),
Self::TransferFromBridge(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::VaultSharesToken(element) => ::core::fmt::Display::fmt(element, f),
Self::Version(element) => ::core::fmt::Display::fmt(element, f),
}
}
}
impl ::core::convert::From<BalanceOfCall> for ERC4626Target0Calls {
fn from(value: BalanceOfCall) -> Self {
Self::BalanceOf(value)
}
}
impl ::core::convert::From<BaseTokenCall> for ERC4626Target0Calls {
fn from(value: BaseTokenCall) -> Self {
Self::BaseToken(value)
}
}
impl ::core::convert::From<BatchTransferFromCall> for ERC4626Target0Calls {
fn from(value: BatchTransferFromCall) -> Self {
Self::BatchTransferFrom(value)
}
}
impl ::core::convert::From<CollectGovernanceFeeCall> for ERC4626Target0Calls {
fn from(value: CollectGovernanceFeeCall) -> Self {
Self::CollectGovernanceFee(value)
}
}
impl ::core::convert::From<ConvertToBaseCall> for ERC4626Target0Calls {
fn from(value: ConvertToBaseCall) -> Self {
Self::ConvertToBase(value)
}
}
impl ::core::convert::From<ConvertToSharesCall> for ERC4626Target0Calls {
fn from(value: ConvertToSharesCall) -> Self {
Self::ConvertToShares(value)
}
}
impl ::core::convert::From<DecimalsCall> for ERC4626Target0Calls {
fn from(value: DecimalsCall) -> Self {
Self::Decimals(value)
}
}
impl ::core::convert::From<GetCheckpointCall> for ERC4626Target0Calls {
fn from(value: GetCheckpointCall) -> Self {
Self::GetCheckpoint(value)
}
}
impl ::core::convert::From<GetCheckpointExposureCall> for ERC4626Target0Calls {
fn from(value: GetCheckpointExposureCall) -> Self {
Self::GetCheckpointExposure(value)
}
}
impl ::core::convert::From<GetMarketStateCall> for ERC4626Target0Calls {
fn from(value: GetMarketStateCall) -> Self {
Self::GetMarketState(value)
}
}
impl ::core::convert::From<GetPoolConfigCall> for ERC4626Target0Calls {
fn from(value: GetPoolConfigCall) -> Self {
Self::GetPoolConfig(value)
}
}
impl ::core::convert::From<GetPoolInfoCall> for ERC4626Target0Calls {
fn from(value: GetPoolInfoCall) -> Self {
Self::GetPoolInfo(value)
}
}
impl ::core::convert::From<GetUncollectedGovernanceFeesCall>
for ERC4626Target0Calls {
fn from(value: GetUncollectedGovernanceFeesCall) -> Self {
Self::GetUncollectedGovernanceFees(value)
}
}
impl ::core::convert::From<GetWithdrawPoolCall> for ERC4626Target0Calls {
fn from(value: GetWithdrawPoolCall) -> Self {
Self::GetWithdrawPool(value)
}
}
impl ::core::convert::From<IsApprovedForAllCall> for ERC4626Target0Calls {
fn from(value: IsApprovedForAllCall) -> Self {
Self::IsApprovedForAll(value)
}
}
impl ::core::convert::From<IsPauserCall> for ERC4626Target0Calls {
fn from(value: IsPauserCall) -> Self {
Self::IsPauser(value)
}
}
impl ::core::convert::From<KindCall> for ERC4626Target0Calls {
fn from(value: KindCall) -> Self {
Self::Kind(value)
}
}
impl ::core::convert::From<LoadCall> for ERC4626Target0Calls {
fn from(value: LoadCall) -> Self {
Self::Load(value)
}
}
impl ::core::convert::From<NameWithTokenIdCall> for ERC4626Target0Calls {
fn from(value: NameWithTokenIdCall) -> Self {
Self::NameWithTokenId(value)
}
}
impl ::core::convert::From<NameCall> for ERC4626Target0Calls {
fn from(value: NameCall) -> Self {
Self::Name(value)
}
}
impl ::core::convert::From<NoncesCall> for ERC4626Target0Calls {
fn from(value: NoncesCall) -> Self {
Self::Nonces(value)
}
}
impl ::core::convert::From<PauseCall> for ERC4626Target0Calls {
fn from(value: PauseCall) -> Self {
Self::Pause(value)
}
}
impl ::core::convert::From<PerTokenApprovalsCall> for ERC4626Target0Calls {
fn from(value: PerTokenApprovalsCall) -> Self {
Self::PerTokenApprovals(value)
}
}
impl ::core::convert::From<PermitForAllCall> for ERC4626Target0Calls {
fn from(value: PermitForAllCall) -> Self {
Self::PermitForAll(value)
}
}
impl ::core::convert::From<SetApprovalCall> for ERC4626Target0Calls {
fn from(value: SetApprovalCall) -> Self {
Self::SetApproval(value)
}
}
impl ::core::convert::From<SetApprovalBridgeCall> for ERC4626Target0Calls {
fn from(value: SetApprovalBridgeCall) -> Self {
Self::SetApprovalBridge(value)
}
}
impl ::core::convert::From<SetApprovalForAllCall> for ERC4626Target0Calls {
fn from(value: SetApprovalForAllCall) -> Self {
Self::SetApprovalForAll(value)
}
}
impl ::core::convert::From<SetCheckpointRewarderCall> for ERC4626Target0Calls {
fn from(value: SetCheckpointRewarderCall) -> Self {
Self::SetCheckpointRewarder(value)
}
}
impl ::core::convert::From<SetFeeCollectorCall> for ERC4626Target0Calls {
fn from(value: SetFeeCollectorCall) -> Self {
Self::SetFeeCollector(value)
}
}
impl ::core::convert::From<SetGovernanceCall> for ERC4626Target0Calls {
fn from(value: SetGovernanceCall) -> Self {
Self::SetGovernance(value)
}
}
impl ::core::convert::From<SetPauserCall> for ERC4626Target0Calls {
fn from(value: SetPauserCall) -> Self {
Self::SetPauser(value)
}
}
impl ::core::convert::From<SetSweepCollectorCall> for ERC4626Target0Calls {
fn from(value: SetSweepCollectorCall) -> Self {
Self::SetSweepCollector(value)
}
}
impl ::core::convert::From<SweepCall> for ERC4626Target0Calls {
fn from(value: SweepCall) -> Self {
Self::Sweep(value)
}
}
impl ::core::convert::From<SymbolCall> for ERC4626Target0Calls {
fn from(value: SymbolCall) -> Self {
Self::Symbol(value)
}
}
impl ::core::convert::From<TotalSharesCall> for ERC4626Target0Calls {
fn from(value: TotalSharesCall) -> Self {
Self::TotalShares(value)
}
}
impl ::core::convert::From<TotalSupplyCall> for ERC4626Target0Calls {
fn from(value: TotalSupplyCall) -> Self {
Self::TotalSupply(value)
}
}
impl ::core::convert::From<TransferFromCall> for ERC4626Target0Calls {
fn from(value: TransferFromCall) -> Self {
Self::TransferFrom(value)
}
}
impl ::core::convert::From<TransferFromBridgeCall> for ERC4626Target0Calls {
fn from(value: TransferFromBridgeCall) -> Self {
Self::TransferFromBridge(value)
}
}
impl ::core::convert::From<VaultSharesTokenCall> for ERC4626Target0Calls {
fn from(value: VaultSharesTokenCall) -> Self {
Self::VaultSharesToken(value)
}
}
impl ::core::convert::From<VersionCall> for ERC4626Target0Calls {
fn from(value: VersionCall) -> Self {
Self::Version(value)
}
}
///Container type for all return fields from the `balanceOf` function with signature `balanceOf(uint256,address)` and selector `0x3656eec2`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct BalanceOfReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `baseToken` function with signature `baseToken()` and selector `0xc55dae63`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct BaseTokenReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `collectGovernanceFee` function with signature `collectGovernanceFee((address,bool,bytes))` and selector `0x3e691db9`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct CollectGovernanceFeeReturn {
pub proceeds: ::ethers::core::types::U256,
}
///Container type for all return fields from the `convertToBase` function with signature `convertToBase(uint256)` and selector `0xb88fed9f`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct ConvertToBaseReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `convertToShares` function with signature `convertToShares(uint256)` and selector `0xc6e6f592`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct ConvertToSharesReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `decimals` function with signature `decimals()` and selector `0x313ce567`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct DecimalsReturn(pub u8);
///Container type for all return fields from the `getCheckpoint` function with signature `getCheckpoint(uint256)` and selector `0x20fc4881`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct GetCheckpointReturn(pub Checkpoint);
///Container type for all return fields from the `getCheckpointExposure` function with signature `getCheckpointExposure(uint256)` and selector `0xcf210e65`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct GetCheckpointExposureReturn(pub ::ethers::core::types::I256);
///Container type for all return fields from the `getMarketState` function with signature `getMarketState()` and selector `0xd8165743`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct GetMarketStateReturn(pub MarketState);
///Container type for all return fields from the `getPoolConfig` function with signature `getPoolConfig()` and selector `0xb0d96580`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
)]
pub struct GetPoolConfigReturn(pub PoolConfig);
///Container type for all return fields from the `getPoolInfo` function with signature `getPoolInfo()` and selector `0x60246c88`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
)]
pub struct GetPoolInfoReturn(pub PoolInfo);
///Container type for all return fields from the `getUncollectedGovernanceFees` function with signature `getUncollectedGovernanceFees()` and selector `0xc69e16ad`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct GetUncollectedGovernanceFeesReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `getWithdrawPool` function with signature `getWithdrawPool()` and selector `0xfba56008`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct GetWithdrawPoolReturn(pub WithdrawPool);
///Container type for all return fields from the `isApprovedForAll` function with signature `isApprovedForAll(address,address)` and selector `0xe985e9c5`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct IsApprovedForAllReturn(pub bool);
///Container type for all return fields from the `isPauser` function with signature `isPauser(address)` and selector `0x46fbf68e`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct IsPauserReturn(pub bool);
///Container type for all return fields from the `kind` function with signature `kind()` and selector `0x04baa00b`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct KindReturn(pub ::std::string::String);
///Container type for all return fields from the `load` function with signature `load(uint256[])` and selector `0xbecee9c3`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct LoadReturn(pub ::std::vec::Vec<[u8; 32]>);
///Container type for all return fields from the `name` function with signature `name(uint256)` and selector `0x00ad800c`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct NameWithTokenIdReturn(pub ::std::string::String);
///Container type for all return fields from the `name` function with signature `name()` and selector `0x06fdde03`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct NameReturn(pub ::std::string::String);
///Container type for all return fields from the `nonces` function with signature `nonces(address)` and selector `0x7ecebe00`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct NoncesReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `perTokenApprovals` function with signature `perTokenApprovals(uint256,address,address)` and selector `0x21ff32a9`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct PerTokenApprovalsReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `symbol` function with signature `symbol(uint256)` and selector `0x4e41a1fb`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct SymbolReturn(pub ::std::string::String);
///Container type for all return fields from the `totalShares` function with signature `totalShares()` and selector `0x3a98ef39`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct TotalSharesReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `totalSupply` function with signature `totalSupply(uint256)` and selector `0xbd85b039`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct TotalSupplyReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `vaultSharesToken` function with signature `vaultSharesToken()` and selector `0x0a4e1493`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct VaultSharesTokenReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `version` function with signature `version()` and selector `0x54fd4d50`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct VersionReturn(pub ::std::string::String);
///`Checkpoint(uint128,uint128,uint128)`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct Checkpoint {
pub weighted_spot_price: u128,
pub last_weighted_spot_price_update_time: u128,
pub vault_share_price: u128,
}
///`Fees(uint256,uint256,uint256,uint256)`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct Fees {
pub curve: ::ethers::core::types::U256,
pub flat: ::ethers::core::types::U256,
pub governance_lp: ::ethers::core::types::U256,
pub governance_zombie: ::ethers::core::types::U256,
}
///`MarketState(uint128,uint128,uint128,uint128,int128,uint128,uint128,uint128,bool,bool,uint112,uint128)`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct MarketState {
pub share_reserves: u128,
pub bond_reserves: u128,
pub long_exposure: u128,
pub longs_outstanding: u128,
pub share_adjustment: i128,
pub shorts_outstanding: u128,
pub long_average_maturity_time: u128,
pub short_average_maturity_time: u128,
pub is_initialized: bool,
pub is_paused: bool,
pub zombie_base_proceeds: u128,
pub zombie_share_reserves: u128,
}
///`Options(address,bool,bytes)`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct Options {
pub destination: ::ethers::core::types::Address,
pub as_base: bool,
pub extra_data: ::ethers::core::types::Bytes,
}
///`PoolConfig(address,address,address,bytes32,uint256,uint256,uint256,uint256,uint256,uint256,uint256,address,address,address,address,(uint256,uint256,uint256,uint256))`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct PoolConfig {
pub base_token: ::ethers::core::types::Address,
pub vault_shares_token: ::ethers::core::types::Address,
pub linker_factory: ::ethers::core::types::Address,
pub linker_code_hash: [u8; 32],
pub initial_vault_share_price: ::ethers::core::types::U256,
pub minimum_share_reserves: ::ethers::core::types::U256,
pub minimum_transaction_amount: ::ethers::core::types::U256,
pub circuit_breaker_delta: ::ethers::core::types::U256,
pub position_duration: ::ethers::core::types::U256,
pub checkpoint_duration: ::ethers::core::types::U256,
pub time_stretch: ::ethers::core::types::U256,
pub governance: ::ethers::core::types::Address,
pub fee_collector: ::ethers::core::types::Address,
pub sweep_collector: ::ethers::core::types::Address,
pub checkpoint_rewarder: ::ethers::core::types::Address,
pub fees: Fees,
}
///`PoolInfo(uint256,int256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct PoolInfo {
pub share_reserves: ::ethers::core::types::U256,
pub share_adjustment: ::ethers::core::types::I256,
pub zombie_base_proceeds: ::ethers::core::types::U256,
pub zombie_share_reserves: ::ethers::core::types::U256,
pub bond_reserves: ::ethers::core::types::U256,
pub lp_total_supply: ::ethers::core::types::U256,
pub vault_share_price: ::ethers::core::types::U256,
pub longs_outstanding: ::ethers::core::types::U256,
pub long_average_maturity_time: ::ethers::core::types::U256,
pub shorts_outstanding: ::ethers::core::types::U256,
pub short_average_maturity_time: ::ethers::core::types::U256,
pub withdrawal_shares_ready_to_withdraw: ::ethers::core::types::U256,
pub withdrawal_shares_proceeds: ::ethers::core::types::U256,
pub lp_share_price: ::ethers::core::types::U256,
pub long_exposure: ::ethers::core::types::U256,
}
///`WithdrawPool(uint128,uint128)`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash
)]
pub struct WithdrawPool {
pub ready_to_withdraw: u128,
pub proceeds: u128,
}
}
pub struct ERC4626Target0Libs {
pub lp_math: ::ethers::types::Address,
}
impl<M: ::ethers::providers::Middleware> ERC4626Target0<M> {
pub fn link_and_deploy<T: ::ethers::core::abi::Tokenize>(
client: ::std::sync::Arc<M>,
constructor_args: T,
libs: ERC4626Target0Libs,
) -> ::core::result::Result<
::ethers::contract::builders::ContractDeployer<M, Self>,
::ethers::contract::ContractError<M>,
> {
let factory = crate::linked_factory::create(
ERC4626TARGET0_ABI.clone(),
"0x6102606040523480156200001257600080fd5b5060405162003ae638038062003ae6833981016040819052620000359162000202565b600160005580516001600160a01b039081166080908152602080840151831660a0908152918401516101a0908152918401516101c090815260c0808601516101e090815260e0808801516102005261012080890151909352610100808901519091526101408089015190915290870180515190925281519093015190925281516040908101516101609081529251606090810151610180908152918701518616610220528601516102405291850151600980546001600160a01b031990811692871692909217905591850151600a8054841691861691909117905591840151600b80548316918516919091179055920151600c8054909316911617905562000315565b60405161020081016001600160401b03811182821017156200016a57634e487b7160e01b600052604160045260246000fd5b60405290565b80516001600160a01b03811681146200018857600080fd5b919050565b600060808284031215620001a057600080fd5b604051608081016001600160401b0381118282101715620001d157634e487b7160e01b600052604160045260246000fd5b8060405250809150825181526020830151602082015260408301516040820152606083015160608201525092915050565b600061026082840312156200021657600080fd5b6200022062000138565b6200022b8362000170565b81526200023b6020840162000170565b60208201526200024e6040840162000170565b6040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e0820152610100808401518183015250610120808401518183015250610140808401518183015250610160620002b981850162000170565b90820152610180620002cd84820162000170565b908201526101a0620002e184820162000170565b908201526101c0620002f584820162000170565b908201526101e06200030a858583016200018d565b908201529392505050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516102005161022051610240516136a76200043f60003960008181610dc40152611e78015260008181610d9d0152611e3b01526000610e64015260008181610e3e015261202b015260008181610e180152612005015260008181610dee0152611fdf01526000610fa001526000610f7b01526000610f5601526000610f33015260008181610ed80152612051015260008181610e8a0152818161113d015261263a015260008181610eb101526128c901526000818161066001528181610d7101528181611b49015281816122e60152818161231201528181612815015261289a01526000818161079001528181610d4c01526110d601526136a76000f3fe608060405234801561001057600080fd5b50600436106102475760003560e01c80637180c8ca1161013b578063becee9c3116100b8578063d81657431161007c578063d816574314610530578063e44808bc14610545578063e4af29d114610558578063e985e9c51461056b578063fba560081461057e57600080fd5b8063becee9c3146104da578063c55dae63146104fa578063c69e16ad14610502578063c6e6f5921461050a578063cf210e651461051d57600080fd5b8063a5107626116100ff578063a510762614610479578063ab033ea91461048c578063b0d965801461049f578063b88fed9f146104b4578063bd85b039146104c757600080fd5b80637180c8ca1461041a5780637ecebe001461042d5780639cd241af14610440578063a22cb46514610453578063a42dce801461046657600080fd5b806321ff32a9116101c957806346fbf68e1161018d57806346fbf68e146103b45780634e41a1fb146103d75780634ed2d6ac146103ea57806354fd4d50146103fd57806360246c881461040557600080fd5b806321ff32a91461034b578063313ce5671461036c5780633656eec2146103865780633a98ef39146103995780633e691db9146103a157600080fd5b80630a4e1493116102105780630a4e1493146102ad57806314e5f07b146102cd57806317fad7fc146102e05780631c0f12b6146102f357806320fc48811461030657600080fd5b8062ad800c1461024c57806301681a621461027557806302329a291461028a57806304baa00b1461029d57806306fdde03146102a5575b600080fd5b61025f61025a366004612b1a565b6105ad565b60405161026c9190612b83565b60405180910390f35b610288610283366004612bab565b6105e4565b005b610288610298366004612bd6565b6105f0565b61025f6105f9565b61025f61063b565b6102b5610652565b6040516001600160a01b03909116815260200161026c565b6102886102db366004612c02565b610692565b6102886102ee366004612cdd565b6106ae565b610288610301366004612d72565b6106c4565b610319610314366004612b1a565b6106d7565b6040805182516001600160801b039081168252602080850151821690830152928201519092169082015260600161026c565b61035e610359366004612dba565b610743565b60405190815260200161026c565b610374610789565b60405160ff909116815260200161026c565b61035e610394366004612dfc565b610824565b61035e61085d565b61035e6103af366004612e2c565b61087c565b6103c76103c2366004612bab565b610887565b604051901515815260200161026c565b61025f6103e5366004612b1a565b6108bd565b6102886103f8366004612e67565b6108cb565b61025f610919565b61040d61094e565b60405161026c9190612eb1565b610288610428366004612f52565b610c5d565b61035e61043b366004612bab565b610c6b565b61028861044e366004612f80565b610c97565b610288610461366004612f52565b610ca8565b610288610474366004612bab565b610d14565b610288610487366004612bab565b610d1d565b61028861049a366004612bab565b610d26565b6104a7610d2f565b60405161026c9190612fb8565b61035e6104c2366004612b1a565b610fdd565b61035e6104d5366004612b1a565b610feb565b6104ed6104e83660046130de565b61100d565b60405161026c9190613120565b6102b56110c8565b61035e611108565b61035e610518366004612b1a565b611122565b61035e61052b366004612b1a565b611130565b610538611167565b60405161026c9190613164565b610288610553366004613275565b611273565b610288610566366004612bab565b6112bb565b6103c76105793660046132d4565b6112c4565b610586611308565b6040805182516001600160801b03908116825260209384015116928101929092520161026c565b60606105df6105bb83611367565b6040516020016105cb9190612b83565b60405160208183030381529060405261148f565b919050565b6105ed816114b3565b50565b6105ed81611629565b606061063860405180604001604052806011815260200170455243343632364879706572647269766560781b8152506040516020016105cb9190612b83565b90565b606061063860016040516020016105cb9190613302565b604080516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016602082015260009161063891016105cb565b6106a38989898989898989896116c5565b505050505050505050565b6106bc8686868686866118bc565b505050505050565b6106d18484848433611970565b50505050565b60408051606081018252600080825260208201819052918101919091526105df600860008481526020019081526020016000206040516020016105cb919081546001600160801b03808216835260809190911c6020830152600190920154909116604082015260600190565b60008381526012602090815260408083206001600160a01b038681168552908352818420908516845282528083205481519283015261078291016105cb565b9392505050565b60006106387f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081091906133b3565b6040805160ff9092166020830152016105cb565b6000828152600f602090815260408083206001600160a01b038516845282528083205481519283015261085791016105cb565b92915050565b600061063861086a611b31565b6040516020016105cb91815260200190565b600061085782611bc1565b6001600160a01b0381166000908152600e602090815260408083205490516105df926105cb9260ff169101901515815260200190565b60606105df6105bb83611cff565b836108d581611dfd565b6001600160a01b0316336001600160a01b03161461090657604051632aab8bd360e01b815260040160405180910390fd5b61091285858585611eba565b5050505050565b60606106386040518060400160405280600781526020016676312e302e313760c81b8152506040516020016105cb9190612b83565b6109c7604051806101e001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006109d1611f27565b60075460106020527fd6f7110f7a6485ce27c724322bdc9b60c9b2518194eace178d55653f1be730215460008080527f6e0956cda88cad152e89927e53611735b61a5c762d1428573c6931b0a5efcb0154939450926001600160801b0390921691610a3c91906133fc565b610a46919061340f565b905060008215610b585773__$2b4fa6f02a36eedfe41c65e8dd342257d3$__635a1b419e610a7385611f3a565b6040805160e084811b6001600160e01b03191682528351600483015260208401516024830152918301516044820152606083015160648201526080830151608482015260a083015160a482015260c083015160c48201529082015160e482015261010082015161010482015261012082015161012482015261014082015161014482015261016090910151610164820152610184016040805180830381865af4158015610b24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b489190613422565b509050610b5581846120d0565b90505b604080516101e0810182526002546001600160801b038082168352600454600f81900b60208501526006546001600160701b036201000082041695850195909552600160801b9485900482166060850152918490048116608084015260a0830186905260c08301879052600354849004811660e0840152600554808216610100850152918490048116610120840152908390048116610140830152600754808216610160840152929092049091166101808201526000906101a081018415610c2957610c2484866120e5565b610c2c565b60005b81526003546001600160801b0316602091820152604051919250610c56916105cb91849101612eb1565b5050505090565b610c6782826120fa565b5050565b6001600160a01b0381166000908152601360209081526040808320548151928301526105df91016105cb565b610ca383838333611eba565b505050565b3360008181526011602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6105ed81612183565b6105ed816121f7565b6105ed8161226b565b610d37612a33565b60408051610200810182526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811682527f000000000000000000000000000000000000000000000000000000000000000081166020808401919091527f00000000000000000000000000000000000000000000000000000000000000008216838501527f00000000000000000000000000000000000000000000000000000000000000006060808501919091527f00000000000000000000000000000000000000000000000000000000000000006080808601919091527f000000000000000000000000000000000000000000000000000000000000000060a08601527f000000000000000000000000000000000000000000000000000000000000000060c08601527f000000000000000000000000000000000000000000000000000000000000000060e08601527f00000000000000000000000000000000000000000000000000000000000000006101008601527f00000000000000000000000000000000000000000000000000000000000000006101208601527f00000000000000000000000000000000000000000000000000000000000000006101408601526009548416610160860152600a548416610180860152600b5484166101a0860152600c549093166101c0850152845192830185527f000000000000000000000000000000000000000000000000000000000000000083527f0000000000000000000000000000000000000000000000000000000000000000838301527f0000000000000000000000000000000000000000000000000000000000000000838601527f0000000000000000000000000000000000000000000000000000000000000000908301526101e08301919091529151610638926105cb929101612fb8565b60006105df61086a836122df565b6000818152601060209081526040808320548151928301526105df91016105cb565b606060008267ffffffffffffffff81111561102a5761102a613447565b604051908082528060200260200182016040528015611053578160200160208202803683370190505b50905060005b838110156110ac5760008585838181106110755761107561345d565b905060200201359050600081549050808484815181106110975761109761345d565b60209081029190910101525050600101611059565b506110c1816040516020016105cb9190613120565b5092915050565b604080516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016602082015260009161063891016105cb565b6000610638600d546040516020016105cb91815260200190565b60006105df61086a8361230b565b60006105df61086a6111627f0000000000000000000000000000000000000000000000000000000000000000856133fc565b612337565b6040805161018081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101829052610140810182905261016081019190915261063860026040516020016105cb919081546001600160801b038082168352608091821c602084015260018401548082166040850152821c60608401526002840154600f81900b83850152821c60a0840152600384015490811660c0840152811c60e083015260049092015460ff8082161515610100840152600882901c1615156101208301526001600160701b03601082901c1661014083015290911c6101608201526101800190565b8461127d81611dfd565b6001600160a01b0316336001600160a01b0316146112ae57604051632aab8bd360e01b815260040160405180910390fd5b6106bc8686868686611970565b6105ed8161237b565b6001600160a01b038281166000908152601160209081526040808320938516835292815282822054835160ff909116151591810191909152909161085791016105cb565b60408051808201909152600080825260208201526040805180820182526007546001600160801b03808216808452600160801b9092048116602093840190815284519384019290925290511691810191909152610638906060016105cb565b606060f882901c6001600160f81b0383166000611383826123ef565b90506000836003811115611399576113996133d0565b036113cb576040518060400160405280600d81526020016c048797065726472697665204c5609c1b8152509350611487565b60018360038111156113df576113df6133d0565b0361140b57806040516020016113f59190613473565b6040516020818303038152906040529350611487565b600283600381111561141f5761141f6133d0565b0361143557806040516020016113f591906134ac565b6003836003811115611449576114496133d0565b03611487576040518060400160405280601b81526020017f48797065726472697665205769746864726177616c205368617265000000000081525093505b505050919050565b80604051636e64089360e11b81526004016114aa9190612b83565b60405180910390fd5b6114bb6124a4565b600b54336000908152600e60205260409020546001600160a01b039091169060ff161580156114f35750336001600160a01b03821614155b801561150a57506009546001600160a01b03163314155b15611527576040516282b42960e81b815260040160405180910390fd5b6000611531611b31565b6040516370a0823160e01b81523060048201529091506000906001600160a01b038516906370a0823190602401602060405180830381865afa15801561157b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159f91906134e6565b90506115b56001600160a01b03851684836124ce565b816115be611b31565b146115dc576040516313dd85ff60e31b815260040160405180910390fd5b836001600160a01b0316836001600160a01b03167f951f51ee88c8e42633698bba90d1e53c0954470938036879e691c0232b47e09660405160405180910390a35050506105ed6001600055565b336000908152600e602052604090205460ff1615801561165457506009546001600160a01b03163314155b15611671576040516282b42960e81b815260040160405180910390fd5b600680548215156101000261ff00199091161790556040517f7c4d1fe30fdbfda9e9c4c43e759ef32e4db5128d4cb58ff3ae9583b89b6242a5906116ba90831515815260200190565b60405180910390a150565b834211156116e65760405163f87d927160e01b815260040160405180910390fd5b6001600160a01b03871661170d5760405163f0dd15fd60e01b815260040160405180910390fd5b6001600160a01b0387811660008181526013602090815260408083205481518084018f905280830195909552948b166060850152891515608085015260a084019490945260c08084018990528451808503909101815260e08401909452835193019290922061190160f01b61010083015261010282018c90526101228201526101420160408051601f198184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa1580156117fb573d6000803e3d6000fd5b505050602060405103519050886001600160a01b0316816001600160a01b03161461183957604051638baa579f60e01b815260040160405180910390fd5b6001600160a01b0389811660008181526013602090815260408083208054600101905560118252808320948d1680845294825291829020805460ff19168c151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050505050505050505050565b6001600160a01b03861615806118d957506001600160a01b038516155b156118f75760405163f0dd15fd60e01b815260040160405180910390fd5b8281146119175760405163174861a760e31b815260040160405180910390fd5b60005b838110156119675761195f8585838181106119375761193761345d565b9050602002013588888686868181106119525761195261345d565b9050602002013533611970565b60010161191a565b50505050505050565b6001600160a01b038416158061198d57506001600160a01b038316155b156119ab5760405163f0dd15fd60e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031614611a6f576001600160a01b0380851660009081526011602090815260408083209385168352929052205460ff16611a6f5760008581526012602090815260408083206001600160a01b03808916855290835281842090851684529091529020546000198114611a6d5760008681526012602090815260408083206001600160a01b03808a168552908352818420908616845290915281208054859290611a6790849061340f565b90915550505b505b6000858152600f602090815260408083206001600160a01b038816845290915281208054849290611aa190849061340f565b90915550506000858152600f602090815260408083206001600160a01b038716845290915281208054849290611ad89084906133fc565b909155505060408051868152602081018490526001600160a01b038086169287821692918516917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a45050505050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015611b98573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bbc91906134e6565b905090565b6000611bcb6124a4565b611bd482612520565b600a546001600160a01b031680611bee6020850185612bab565b6001600160a01b031614611c1557604051630ad13b3360e21b815260040160405180910390fd5b336000908152600e602052604090205460ff16158015611c3e5750336001600160a01b03821614155b8015611c5557506009546001600160a01b03163314155b15611c72576040516282b42960e81b815260040160405180910390fd5b6000611c7c611f27565b600d80546000909155909150611c93818387612556565b93506001600160a01b0383167f3e5eb8642141e29a1b4e5c28b467396f814c1698e1adfc3ff327ddb9a60383618584611cd260408a0160208b01612bd6565b60408051938452602084019290925215159082015260600160405180910390a25050506105df6001600055565b606060f882901c6001600160f81b0383166000611d1b826123ef565b90506000836003811115611d3157611d316133d0565b03611d63576040518060400160405280600d81526020016c0485950455244524956452d4c5609c1b8152509350611487565b6001836003811115611d7757611d776133d0565b03611d8d57806040516020016113f591906134ff565b6002836003811115611da157611da16133d0565b03611db757806040516020016113f59190613537565b6003836003811115611dcb57611dcb6133d0565b0361148757505060408051808201909152600d81526c485950455244524956452d575360981b60208201529392505050565b604080513060208083019190915281830193909352815180820383018152606080830184528151918501919091206001600160f81b031960808401527f000000000000000000000000000000000000000000000000000000000000000090911b6bffffffffffffffffffffffff1916608183015260958201527f000000000000000000000000000000000000000000000000000000000000000060b5808301919091528251808303909101815260d5909101909152805191012090565b60008481526012602090815260408083206001600160a01b0385811680865291845282852090881680865290845293829020869055905185815290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050565b6000611bbc670de0b6b3a76400006122df565b611f9e6040518061018001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60408051610180810182526002546001600160801b038082168352600454600f0b6020840152600160801b91829004811693830193909352606082018590527f000000000000000000000000000000000000000000000000000000000000000060808301527f000000000000000000000000000000000000000000000000000000000000000060a08301527f000000000000000000000000000000000000000000000000000000000000000060c08301527f000000000000000000000000000000000000000000000000000000000000000060e0830152600354048216610100820152600554909161012083019161209691166125ef565b81526004546001600160801b03600160801b91829004811660208401526005546040909301926120c8929004166125ef565b905292915050565b60006107828383670de0b6b3a7640000612665565b600061078283670de0b6b3a764000084612665565b6009546001600160a01b03163314612124576040516282b42960e81b815260040160405180910390fd5b6001600160a01b0382166000818152600e6020908152604091829020805460ff191685151590811790915591519182527f902923dcd4814f6cef7005a70e01d5cf2035ab02d4523ef3b865f1d7bab885af910160405180910390a25050565b6009546001600160a01b031633146121ad576040516282b42960e81b815260040160405180910390fd5b600a80546001600160a01b0319166001600160a01b0383169081179091556040517fe5693914d19c789bdee50a362998c0bc8d035a835f9871da5d51152f0582c34f90600090a250565b6009546001600160a01b03163314612221576040516282b42960e81b815260040160405180910390fd5b600c80546001600160a01b0319166001600160a01b0383169081179091556040517fae062fb82c932c653cd44617343ecda1d13e375e0d6f20d969c944fbda1963d390600090a250565b6009546001600160a01b03163314612295576040516282b42960e81b815260040160405180910390fd5b600980546001600160a01b0319166001600160a01b0383169081179091556040517f9d3e522e1e47a2f6009739342b9cc7b252a1888154e843ab55ee1c81745795ab90600090a250565b60006108577f000000000000000000000000000000000000000000000000000000000000000083612683565b60006108577f0000000000000000000000000000000000000000000000000000000000000000836126f0565b600061235f6010600061234b600286612720565b815260200190815260200160002054612755565b6123716010600061234b600187612720565b6108579190613563565b6009546001600160a01b031633146123a5576040516282b42960e81b815260040160405180910390fd5b600b80546001600160a01b0319166001600160a01b0383169081179091556040517fc049058b1df2dd8902739ceb78992df12fa8369c06c450b3c6787137b452fdd290600090a250565b60408051604e80825260808201909252606091906000908260208201818036833701905050905060005b84156124965761242a600a86613599565b6124359060306133fc565b60f81b826001612445848761340f565b61244f919061340f565b8151811061245f5761245f61345d565b60200101906001600160f81b031916908160001a90535080612480816135ad565b915061248f9050600a866135c6565b9450612419565b918290030190815292915050565b6002600054036124c757604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610ca3908490612783565b600061252f6020830183612bab565b6001600160a01b0316036105ed5760405163f0dd15fd60e01b815260040160405180910390fd5b60008061256385856120d0565b905061256e8161230b565b945084600003612582576000915050610782565b8491506125956040840160208501612bd6565b156125c4576125bd856125ab6020860186612bab565b6125b860408701876135da565b6127e6565b91506125e7565b6125e7856125d56020860186612bab565b6125e260408701876135da565b61288d565b509392505050565b600080670de0b6b3a76400006126036128c1565b61260d9190613621565b905080831161261d576000612627565b612627818461340f565b915061078261265e670de0b6b3a76400007f0000000000000000000000000000000000000000000000000000000000000000613621565b83906120e5565b600082600019048411830215820261267c57600080fd5b5091020490565b6040516303d1689d60e11b8152600481018290526000906001600160a01b038416906307a2d13a906024015b602060405180830381865afa1580156126cc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078291906134e6565b6040516363737ac960e11b8152600481018290526000906001600160a01b0384169063c6e6f592906024016126af565b60006001600160f81b0382111561274a5760405163b7d0949760e01b815260040160405180910390fd5b5060f89190911b1790565b60006001600160ff1b0382111561277f5760405163396ea70160e11b815260040160405180910390fd5b5090565b60006127986001600160a01b038416836128ed565b905080516000141580156127bd5750808060200190518101906127bb9190613638565b155b15610ca357604051635274afe760e01b81526001600160a01b03841660048201526024016114aa565b604051635d043b2960e11b8152600481018590526001600160a01b0384811660248301523060448301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063ba087652906064016020604051808303816000875af1158015612860573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061288491906134e6565b95945050505050565b6106d16001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001684866124ce565b6000611bbc427f00000000000000000000000000000000000000000000000000000000000000006128fb565b606061078283836000612911565b60006129078284613599565b610782908461340f565b6060814710156129365760405163cd78605960e01b81523060048201526024016114aa565b600080856001600160a01b031684866040516129529190613655565b60006040518083038185875af1925050503d806000811461298f576040519150601f19603f3d011682016040523d82523d6000602084013e612994565b606091505b50915091506129a48683836129ae565b9695505050505050565b6060826129c3576129be82612a0a565b610782565b81511580156129da57506001600160a01b0384163b155b15612a0357604051639996b31560e01b81526001600160a01b03851660048201526024016114aa565b5080610782565b805115612a1a5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b60405180610200016040528060006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b03168152602001612b156040518060800160405280600081526020016000815260200160008152602001600081525090565b905290565b600060208284031215612b2c57600080fd5b5035919050565b60005b83811015612b4e578181015183820152602001612b36565b50506000910152565b60008151808452612b6f816020860160208601612b33565b601f01601f19169290920160200192915050565b6020815260006107826020830184612b57565b6001600160a01b03811681146105ed57600080fd5b600060208284031215612bbd57600080fd5b813561078281612b96565b80151581146105ed57600080fd5b600060208284031215612be857600080fd5b813561078281612bc8565b60ff811681146105ed57600080fd5b60008060008060008060008060006101208a8c031215612c2157600080fd5b8935985060208a0135975060408a0135612c3a81612b96565b965060608a0135612c4a81612b96565b955060808a0135612c5a81612bc8565b945060a08a0135935060c08a0135612c7181612bf3565b8093505060e08a013591506101008a013590509295985092959850929598565b60008083601f840112612ca357600080fd5b50813567ffffffffffffffff811115612cbb57600080fd5b6020830191508360208260051b8501011115612cd657600080fd5b9250929050565b60008060008060008060808789031215612cf657600080fd5b8635612d0181612b96565b95506020870135612d1181612b96565b9450604087013567ffffffffffffffff80821115612d2e57600080fd5b612d3a8a838b01612c91565b90965094506060890135915080821115612d5357600080fd5b50612d6089828a01612c91565b979a9699509497509295939492505050565b60008060008060808587031215612d8857600080fd5b843593506020850135612d9a81612b96565b92506040850135612daa81612b96565b9396929550929360600135925050565b600080600060608486031215612dcf57600080fd5b833592506020840135612de181612b96565b91506040840135612df181612b96565b809150509250925092565b60008060408385031215612e0f57600080fd5b823591506020830135612e2181612b96565b809150509250929050565b600060208284031215612e3e57600080fd5b813567ffffffffffffffff811115612e5557600080fd5b82016060818503121561078257600080fd5b60008060008060808587031215612e7d57600080fd5b843593506020850135612e8f81612b96565b9250604085013591506060850135612ea681612b96565b939692955090935050565b815181526020808301519082015260408083015190820152606080830151908201526080808301519082015260a0808301519082015260c0808301519082015260e08083015190820152610100808301519082015261012080830151908201526101408083015190820152610160808301519082015261018080830151908201526101a080830151908201526101c091820151918101919091526101e00190565b60008060408385031215612f6557600080fd5b8235612f7081612b96565b91506020830135612e2181612bc8565b600080600060608486031215612f9557600080fd5b833592506020840135612fa781612b96565b929592945050506040919091013590565b81516001600160a01b0316815261026081016020830151612fe460208401826001600160a01b03169052565b506040830151612fff60408401826001600160a01b03169052565b50606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010080840151818401525061012080840151818401525061014080840151818401525061016080840151613071828501826001600160a01b03169052565b5050610180838101516001600160a01b03908116918401919091526101a0808501518216908401526101c080850151909116908301526101e0808401518051828501526020810151610200850152604081015161022085015260608101516102408501525b505092915050565b600080602083850312156130f157600080fd5b823567ffffffffffffffff81111561310857600080fd5b61311485828601612c91565b90969095509350505050565b6020808252825182820181905260009190848201906040850190845b818110156131585783518352928401929184019160010161313c565b50909695505050505050565b81516001600160801b031681526101808101602083015161319060208401826001600160801b03169052565b5060408301516131ab60408401826001600160801b03169052565b5060608301516131c660608401826001600160801b03169052565b5060808301516131db6080840182600f0b9052565b5060a08301516131f660a08401826001600160801b03169052565b5060c083015161321160c08401826001600160801b03169052565b5060e083015161322c60e08401826001600160801b03169052565b506101008381015115159083015261012080840151151590830152610140808401516001600160701b031690830152610160808401516001600160801b038116828501526130d6565b600080600080600060a0868803121561328d57600080fd5b85359450602086013561329f81612b96565b935060408601356132af81612b96565b92506060860135915060808601356132c681612b96565b809150509295509295909350565b600080604083850312156132e757600080fd5b82356132f281612b96565b91506020830135612e2181612b96565b60006020808352600084548160018260011c9150600183168061332657607f831692505b60208310810361334457634e487b7160e01b85526022600452602485fd5b60208801839052604088018180156133635760018114613379576133a4565b60ff198616825284151560051b820196506133a4565b60008b81526020902060005b8681101561339e57815484820152908501908901613385565b83019750505b50949998505050505050505050565b6000602082840312156133c557600080fd5b815161078281612bf3565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b80820180821115610857576108576133e6565b81810381811115610857576108576133e6565b6000806040838503121561343557600080fd5b825191506020830151612e2181612bc8565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b700243cb832b9323934bb32902637b7339d1607d1b81526000825161349f816011850160208701612b33565b9190910160110192915050565b710243cb832b9323934bb329029b437b93a1d160751b8152600082516134d9816012850160208701612b33565b9190910160120192915050565b6000602082840312156134f857600080fd5b5051919050565b6f242ca822a9222924ab2296a627a7239d60811b81526000825161352a816010850160208701612b33565b9190910160100192915050565b70242ca822a9222924ab2296a9a427a92a1d60791b81526000825161349f816011850160208701612b33565b81810360008312801583831316838312821617156110c1576110c16133e6565b634e487b7160e01b600052601260045260246000fd5b6000826135a8576135a8613583565b500690565b6000600182016135bf576135bf6133e6565b5060010190565b6000826135d5576135d5613583565b500490565b6000808335601e198436030181126135f157600080fd5b83018035915067ffffffffffffffff82111561360c57600080fd5b602001915036819003821315612cd657600080fd5b8082028115828204841417610857576108576133e6565b60006020828403121561364a57600080fd5b815161078281612bc8565b60008251613667818460208701612b33565b919091019291505056fea2646970667358221220646ee3bb60d8d5b62f1f55617f7e388522ac2341dae64d0c37d518fcc012738964736f6c63430008160033",
[
(
"contracts/src/libraries/LPMath.sol:LPMath",
libs.lp_math,
)
],
client.clone(),
).unwrap();
let deployer = factory.deploy(constructor_args)?;
let deployer = ::ethers::contract::ContractDeployer::new(deployer);
Ok(deployer)
}
}