pub use erc20_preset_minter_pauser_contract::*;
/// 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 erc20_preset_minter_pauser_contract {
#[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("name"),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("symbol"),
kind: ::ethers::core::abi::ethabi::ParamType::String,
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("string"),
),
},
],
}),
functions: ::core::convert::From::from([
(
::std::borrow::ToOwned::to_owned("DEFAULT_ADMIN_ROLE"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("DEFAULT_ADMIN_ROLE"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::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("MINTER_ROLE"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("MINTER_ROLE"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::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("PAUSER_ROLE"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("PAUSER_ROLE"),
inputs: ::std::vec![],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::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("allowance"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("allowance"),
inputs: ::std::vec![
::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"),
),
},
],
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("approve"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("approve"),
inputs: ::std::vec![
::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("amount"),
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::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::NonPayable,
},
],
),
(
::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("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("burn"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("burn"),
inputs: ::std::vec![
::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("burnFrom"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("burnFrom"),
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("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("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("decreaseAllowance"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("decreaseAllowance"),
inputs: ::std::vec![
::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("subtractedValue"),
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::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::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("getRoleAdmin"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getRoleAdmin"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32"),
),
},
],
outputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::string::String::new(),
kind: ::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("getRoleMember"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getRoleMember"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
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("index"),
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::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("getRoleMemberCount"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("getRoleMemberCount"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes32"),
),
},
],
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("grantRole"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("grantRole"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
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("account"),
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("hasRole"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("hasRole"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
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("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("increaseAllowance"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("increaseAllowance"),
inputs: ::std::vec![
::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("addedValue"),
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::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::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("mint"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("mint"),
inputs: ::std::vec![
::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("name"),
::std::vec![
::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("pause"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("pause"),
inputs: ::std::vec![],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("paused"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("paused"),
inputs: ::std::vec![],
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("renounceRole"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("renounceRole"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
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("account"),
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("revokeRole"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("revokeRole"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("role"),
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("account"),
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("supportsInterface"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("supportsInterface"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::Param {
name: ::std::borrow::ToOwned::to_owned("interfaceId"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
4usize,
),
internal_type: ::core::option::Option::Some(
::std::borrow::ToOwned::to_owned("bytes4"),
),
},
],
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("symbol"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("symbol"),
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("totalSupply"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("totalSupply"),
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("transfer"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("transfer"),
inputs: ::std::vec![
::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![
::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::NonPayable,
},
],
),
(
::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("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![
::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::NonPayable,
},
],
),
(
::std::borrow::ToOwned::to_owned("unpause"),
::std::vec![
::ethers::core::abi::ethabi::Function {
name: ::std::borrow::ToOwned::to_owned("unpause"),
inputs: ::std::vec![],
outputs: ::std::vec![],
constant: ::core::option::Option::None,
state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
},
],
),
]),
events: ::core::convert::From::from([
(
::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("Paused"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("Paused"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("RoleAdminChanged"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("RoleAdminChanged"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("role"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("previousAdminRole"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
indexed: true,
},
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("newAdminRole"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("RoleGranted"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("RoleGranted"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("role"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
indexed: true,
},
::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("sender"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("RoleRevoked"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("RoleRevoked"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("role"),
kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
32usize,
),
indexed: true,
},
::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("sender"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: true,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("Transfer"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("Transfer"),
inputs: ::std::vec![
::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("value"),
kind: ::ethers::core::abi::ethabi::ParamType::Uint(
256usize,
),
indexed: false,
},
],
anonymous: false,
},
],
),
(
::std::borrow::ToOwned::to_owned("Unpaused"),
::std::vec![
::ethers::core::abi::ethabi::Event {
name: ::std::borrow::ToOwned::to_owned("Unpaused"),
inputs: ::std::vec![
::ethers::core::abi::ethabi::EventParam {
name: ::std::borrow::ToOwned::to_owned("account"),
kind: ::ethers::core::abi::ethabi::ParamType::Address,
indexed: false,
},
],
anonymous: false,
},
],
),
]),
errors: ::std::collections::BTreeMap::new(),
receive: false,
fallback: false,
}
}
///The parsed JSON ABI of the contract.
pub static ERC20PRESETMINTERPAUSERCONTRACT_ABI: ::ethers::contract::Lazy<
::ethers::core::abi::Abi,
> = ::ethers::contract::Lazy::new(__abi);
#[rustfmt::skip]
const __BYTECODE: &[u8] = b"`\x80`@R4\x80\x15b\0\0\x11W`\0\x80\xFD[P`@Qb\0\x1D\x128\x03\x80b\0\x1D\x12\x839\x81\x01`@\x81\x90Rb\0\x004\x91b\0\x03\x9FV[\x81Q\x82\x90\x82\x90b\0\0M\x90`\x05\x90` \x85\x01\x90b\0\x02BV[P\x80Qb\0\0c\x90`\x06\x90` \x84\x01\x90b\0\x02BV[PP`\x07\x80T`\xFF\x19\x16\x90UPb\0\0}`\x003b\0\0\xDDV[b\0\0\xA9\x7F\x9F-\xF0\xFE\xD2\xC7vH\xDEX`\xA4\xCCP\x8C\xD0\x81\x8C\x85\xB8\xB8\xA1\xABL\xEE\xEF\x8D\x98\x1C\x89V\xA63b\0\0\xDDV[b\0\0\xD5\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*3b\0\0\xDDV[PPb\0\x04\\V[b\0\0\xE9\x82\x82b\0\0\xEDV[PPV[b\0\x01\x04\x82\x82b\0\x010` \x1Bb\0\t=\x17` \x1CV[`\0\x82\x81R`\x01` \x90\x81R`@\x90\x91 b\0\x01+\x91\x83\x90b\0\t\xC1b\0\x01\xD0\x82\x1B\x17\x90\x1CV[PPPV[`\0\x82\x81R` \x81\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x85\x16\x84R\x90\x91R\x90 T`\xFF\x16b\0\0\xE9W`\0\x82\x81R` \x81\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x85\x16\x84R\x90\x91R\x90 \x80T`\xFF\x19\x16`\x01\x17\x90Ub\0\x01\x8C3\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x81`\x01`\x01`\xA0\x1B\x03\x16\x83\x7F/\x87\x88\x11~~\xFF\x1D\x82\xE9&\xECyI\x01\xD1|x\x02JP'\t@0E@\xA73eo\r`@Q`@Q\x80\x91\x03\x90\xA4PPV[`\0b\0\x01\xE7\x83`\x01`\x01`\xA0\x1B\x03\x84\x16b\0\x01\xF0V[\x90P[\x92\x91PPV[`\0\x81\x81R`\x01\x83\x01` R`@\x81 Tb\0\x029WP\x81T`\x01\x81\x81\x01\x84U`\0\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ub\0\x01\xEAV[P`\0b\0\x01\xEAV[\x82\x80Tb\0\x02P\x90b\0\x04\tV[\x90`\0R` `\0 \x90`\x1F\x01` \x90\x04\x81\x01\x92\x82b\0\x02tW`\0\x85Ub\0\x02\xBFV[\x82`\x1F\x10b\0\x02\x8FW\x80Q`\xFF\x19\x16\x83\x80\x01\x17\x85Ub\0\x02\xBFV[\x82\x80\x01`\x01\x01\x85U\x82\x15b\0\x02\xBFW\x91\x82\x01[\x82\x81\x11\x15b\0\x02\xBFW\x82Q\x82U\x91` \x01\x91\x90`\x01\x01\x90b\0\x02\xA2V[Pb\0\x02\xCD\x92\x91Pb\0\x02\xD1V[P\x90V[[\x80\x82\x11\x15b\0\x02\xCDW`\0\x81U`\x01\x01b\0\x02\xD2V[`\0\x82`\x1F\x83\x01\x12b\0\x02\xFAW`\0\x80\xFD[\x81Q`\x01`\x01`@\x1B\x03\x80\x82\x11\x15b\0\x03\x17Wb\0\x03\x17b\0\x04FV[`@Q`\x1F\x83\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15b\0\x03BWb\0\x03Bb\0\x04FV[\x81`@R\x83\x81R` \x92P\x86\x83\x85\x88\x01\x01\x11\x15b\0\x03_W`\0\x80\xFD[`\0\x91P[\x83\x82\x10\x15b\0\x03\x83W\x85\x82\x01\x83\x01Q\x81\x83\x01\x84\x01R\x90\x82\x01\x90b\0\x03dV[\x83\x82\x11\x15b\0\x03\x95W`\0\x83\x85\x83\x01\x01R[\x96\x95PPPPPPV[`\0\x80`@\x83\x85\x03\x12\x15b\0\x03\xB3W`\0\x80\xFD[\x82Q`\x01`\x01`@\x1B\x03\x80\x82\x11\x15b\0\x03\xCBW`\0\x80\xFD[b\0\x03\xD9\x86\x83\x87\x01b\0\x02\xE8V[\x93P` \x85\x01Q\x91P\x80\x82\x11\x15b\0\x03\xF0W`\0\x80\xFD[Pb\0\x03\xFF\x85\x82\x86\x01b\0\x02\xE8V[\x91PP\x92P\x92\x90PV[`\x01\x81\x81\x1C\x90\x82\x16\x80b\0\x04\x1EW`\x7F\x82\x16\x91P[` \x82\x10\x81\x14\x15b\0\x04@WcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[a\x18\xA6\x80b\0\x04l`\09`\0\xF3\xFE`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\x01\xC4W`\x005`\xE0\x1C\x80cp\xA0\x821\x11a\0\xF9W\x80c\xA4W\xC2\xD7\x11a\0\x97W\x80c\xD59\x13\x93\x11a\0qW\x80c\xD59\x13\x93\x14a\x03\xAFW\x80c\xD5Gt\x1F\x14a\x03\xD6W\x80c\xDDb\xED>\x14a\x03\xE9W\x80c\xE6:\xB1\xE9\x14a\x03\xFCW`\0\x80\xFD[\x80c\xA4W\xC2\xD7\x14a\x03vW\x80c\xA9\x05\x9C\xBB\x14a\x03\x89W\x80c\xCA\x15\xC8s\x14a\x03\x9CW`\0\x80\xFD[\x80c\x90\x10\xD0|\x11a\0\xD3W\x80c\x90\x10\xD0|\x14a\x03(W\x80c\x91\xD1HT\x14a\x03SW\x80c\x95\xD8\x9BA\x14a\x03fW\x80c\xA2\x17\xFD\xDF\x14a\x03nW`\0\x80\xFD[\x80cp\xA0\x821\x14a\x02\xE4W\x80cy\xCCg\x90\x14a\x03\rW\x80c\x84V\xCBY\x14a\x03 W`\0\x80\xFD[\x80c1<\xE5g\x11a\x01fW\x80c?K\xA8:\x11a\x01@W\x80c?K\xA8:\x14a\x02\xABW\x80c@\xC1\x0F\x19\x14a\x02\xB3W\x80cB\x96lh\x14a\x02\xC6W\x80c\\\x97Z\xBB\x14a\x02\xD9W`\0\x80\xFD[\x80c1<\xE5g\x14a\x02vW\x80c6V\x8A\xBE\x14a\x02\x85W\x80c9P\x93Q\x14a\x02\x98W`\0\x80\xFD[\x80c\x18\x16\r\xDD\x11a\x01\xA2W\x80c\x18\x16\r\xDD\x14a\x02\x19W\x80c#\xB8r\xDD\x14a\x02+W\x80c$\x8A\x9C\xA3\x14a\x02>W\x80c//\xF1]\x14a\x02aW`\0\x80\xFD[\x80c\x01\xFF\xC9\xA7\x14a\x01\xC9W\x80c\x06\xFD\xDE\x03\x14a\x01\xF1W\x80c\t^\xA7\xB3\x14a\x02\x06W[`\0\x80\xFD[a\x01\xDCa\x01\xD76`\x04a\x16zV[a\x04#V[`@Q\x90\x15\x15\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x01\xF9a\x04NV[`@Qa\x01\xE8\x91\x90a\x17\x19V[a\x01\xDCa\x02\x146`\x04a\x15\xF2V[a\x04\xE0V[`\x04T[`@Q\x90\x81R` \x01a\x01\xE8V[a\x01\xDCa\x0296`\x04a\x15\xB6V[a\x04\xF8V[a\x02\x1Da\x02L6`\x04a\x16\x1CV[`\0\x90\x81R` \x81\x90R`@\x90 `\x01\x01T\x90V[a\x02ta\x02o6`\x04a\x165V[a\x05\x1CV[\0[`@Q`\x12\x81R` \x01a\x01\xE8V[a\x02ta\x02\x936`\x04a\x165V[a\x05FV[a\x01\xDCa\x02\xA66`\x04a\x15\xF2V[a\x05\xC9V[a\x02ta\x05\xEBV[a\x02ta\x02\xC16`\x04a\x15\xF2V[a\x06\x91V[a\x02ta\x02\xD46`\x04a\x16\x1CV[a\x070V[`\x07T`\xFF\x16a\x01\xDCV[a\x02\x1Da\x02\xF26`\x04a\x15hV[`\x01`\x01`\xA0\x1B\x03\x16`\0\x90\x81R`\x02` R`@\x90 T\x90V[a\x02ta\x03\x1B6`\x04a\x15\xF2V[a\x07=V[a\x02ta\x07RV[a\x03;a\x0366`\x04a\x16XV[a\x07\xF6V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xE8V[a\x01\xDCa\x03a6`\x04a\x165V[a\x08\x15V[a\x01\xF9a\x08>V[a\x02\x1D`\0\x81V[a\x01\xDCa\x03\x846`\x04a\x15\xF2V[a\x08MV[a\x01\xDCa\x03\x976`\x04a\x15\xF2V[a\x08\xC8V[a\x02\x1Da\x03\xAA6`\x04a\x16\x1CV[a\x08\xD6V[a\x02\x1D\x7F\x9F-\xF0\xFE\xD2\xC7vH\xDEX`\xA4\xCCP\x8C\xD0\x81\x8C\x85\xB8\xB8\xA1\xABL\xEE\xEF\x8D\x98\x1C\x89V\xA6\x81V[a\x02ta\x03\xE46`\x04a\x165V[a\x08\xEDV[a\x02\x1Da\x03\xF76`\x04a\x15\x83V[a\t\x12V[a\x02\x1D\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*\x81V[`\0`\x01`\x01`\xE0\x1B\x03\x19\x82\x16cZ\x05\x18\x0F`\xE0\x1B\x14\x80a\x04HWPa\x04H\x82a\t\xD6V[\x92\x91PPV[```\x05\x80Ta\x04]\x90a\x17\xDDV[\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80Ta\x04\x89\x90a\x17\xDDV[\x80\x15a\x04\xD6W\x80`\x1F\x10a\x04\xABWa\x01\0\x80\x83T\x04\x02\x83R\x91` \x01\x91a\x04\xD6V[\x82\x01\x91\x90`\0R` `\0 \x90[\x81T\x81R\x90`\x01\x01\x90` \x01\x80\x83\x11a\x04\xB9W\x82\x90\x03`\x1F\x16\x82\x01\x91[PPPPP\x90P\x90V[`\x003a\x04\xEE\x81\x85\x85a\n\x0BV[P`\x01\x93\x92PPPV[`\x003a\x05\x06\x85\x82\x85a\x0B/V[a\x05\x11\x85\x85\x85a\x0B\xA9V[P`\x01\x94\x93PPPPV[`\0\x82\x81R` \x81\x90R`@\x90 `\x01\x01Ta\x057\x81a\r_V[a\x05A\x83\x83a\riV[PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x163\x14a\x05\xBBW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`/`$\x82\x01R\x7FAccessControl: can only renounce`D\x82\x01Rn\x1097\xB62\xB9\x9037\xB9\x109\xB2\xB63`\x89\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[a\x05\xC5\x82\x82a\r\x8BV[PPV[`\x003a\x04\xEE\x81\x85\x85a\x05\xDC\x83\x83a\t\x12V[a\x05\xE6\x91\x90a\x17LV[a\n\x0BV[a\x06\x15\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*3a\x08\x15V[a\x06\x87W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`9`$\x82\x01R\x7FERC20PresetMinterPauser: must ha`D\x82\x01R\x7Fve pauser role to unpause\0\0\0\0\0\0\0`d\x82\x01R`\x84\x01a\x05\xB2V[a\x06\x8Fa\r\xADV[V[a\x06\xBB\x7F\x9F-\xF0\xFE\xD2\xC7vH\xDEX`\xA4\xCCP\x8C\xD0\x81\x8C\x85\xB8\xB8\xA1\xABL\xEE\xEF\x8D\x98\x1C\x89V\xA63a\x08\x15V[a\x07&W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`6`$\x82\x01R\x7FERC20PresetMinterPauser: must ha`D\x82\x01Ru\x1D\x99H\x1BZ[\x9D\x19\\\x88\x1C\x9B\xDB\x19H\x1D\x1B\xC8\x1BZ[\x9D`R\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x05\xC5\x82\x82a\r\xFFV[a\x07:3\x82a\x0E\xCCV[PV[a\x07H\x823\x83a\x0B/V[a\x05\xC5\x82\x82a\x0E\xCCV[a\x07|\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*3a\x08\x15V[a\x07\xEEW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`7`$\x82\x01R\x7FERC20PresetMinterPauser: must ha`D\x82\x01R\x7Fve pauser role to pause\0\0\0\0\0\0\0\0\0`d\x82\x01R`\x84\x01a\x05\xB2V[a\x06\x8Fa\x10\x0CV[`\0\x82\x81R`\x01` R`@\x81 a\x08\x0E\x90\x83a\x10IV[\x93\x92PPPV[`\0\x91\x82R` \x82\x81R`@\x80\x84 `\x01`\x01`\xA0\x1B\x03\x93\x90\x93\x16\x84R\x91\x90R\x90 T`\xFF\x16\x90V[```\x06\x80Ta\x04]\x90a\x17\xDDV[`\x003\x81a\x08[\x82\x86a\t\x12V[\x90P\x83\x81\x10\x15a\x08\xBBW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`%`$\x82\x01R\x7FERC20: decreased allowance below`D\x82\x01Rd zero`\xD8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x05\x11\x82\x86\x86\x84\x03a\n\x0BV[`\x003a\x04\xEE\x81\x85\x85a\x0B\xA9V[`\0\x81\x81R`\x01` R`@\x81 a\x04H\x90a\x10UV[`\0\x82\x81R` \x81\x90R`@\x90 `\x01\x01Ta\t\x08\x81a\r_V[a\x05A\x83\x83a\r\x8BV[`\x01`\x01`\xA0\x1B\x03\x91\x82\x16`\0\x90\x81R`\x03` \x90\x81R`@\x80\x83 \x93\x90\x94\x16\x82R\x91\x90\x91R T\x90V[a\tG\x82\x82a\x08\x15V[a\x05\xC5W`\0\x82\x81R` \x81\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x85\x16\x84R\x90\x91R\x90 \x80T`\xFF\x19\x16`\x01\x17\x90Ua\t}3\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x81`\x01`\x01`\xA0\x1B\x03\x16\x83\x7F/\x87\x88\x11~~\xFF\x1D\x82\xE9&\xECyI\x01\xD1|x\x02JP'\t@0E@\xA73eo\r`@Q`@Q\x80\x91\x03\x90\xA4PPV[`\0a\x08\x0E\x83`\x01`\x01`\xA0\x1B\x03\x84\x16a\x10_V[`\0`\x01`\x01`\xE0\x1B\x03\x19\x82\x16cye\xDB\x0B`\xE0\x1B\x14\x80a\x04HWPc\x01\xFF\xC9\xA7`\xE0\x1B`\x01`\x01`\xE0\x1B\x03\x19\x83\x16\x14a\x04HV[`\x01`\x01`\xA0\x1B\x03\x83\x16a\nmW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`$\x80\x82\x01R\x7FERC20: approve from the zero add`D\x82\x01Rcress`\xE0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x82\x16a\n\xCEW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FERC20: approve to the zero addre`D\x82\x01Rass`\xF0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\0\x81\x81R`\x03` \x90\x81R`@\x80\x83 \x94\x87\x16\x80\x84R\x94\x82R\x91\x82\x90 \x85\x90U\x90Q\x84\x81R\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91\x01`@Q\x80\x91\x03\x90\xA3PPPV[`\0a\x0B;\x84\x84a\t\x12V[\x90P`\0\x19\x81\x14a\x0B\xA3W\x81\x81\x10\x15a\x0B\x96W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1D`$\x82\x01R\x7FERC20: insufficient allowance\0\0\0`D\x82\x01R`d\x01a\x05\xB2V[a\x0B\xA3\x84\x84\x84\x84\x03a\n\x0BV[PPPPV[`\x01`\x01`\xA0\x1B\x03\x83\x16a\x0C\rW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`%`$\x82\x01R\x7FERC20: transfer from the zero ad`D\x82\x01Rddress`\xD8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x0CoW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`#`$\x82\x01R\x7FERC20: transfer to the zero addr`D\x82\x01Rbess`\xE8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x0Cz\x83\x83\x83a\x10\xAEV[`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x90\x81R`\x02` R`@\x90 T\x81\x81\x10\x15a\x0C\xF2W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FERC20: transfer amount exceeds b`D\x82\x01Realance`\xD0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16`\0\x81\x81R`\x02` R`@\x80\x82 \x86\x86\x03\x90U\x92\x86\x16\x80\x82R\x90\x83\x90 \x80T\x86\x01\x90U\x91Q\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x90a\rR\x90\x86\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3a\x0B\xA3V[a\x07:\x813a\x10\xB9V[a\rs\x82\x82a\t=V[`\0\x82\x81R`\x01` R`@\x90 a\x05A\x90\x82a\t\xC1V[a\r\x95\x82\x82a\x11\x12V[`\0\x82\x81R`\x01` R`@\x90 a\x05A\x90\x82a\x11wV[a\r\xB5a\x11\x8CV[`\x07\x80T`\xFF\x19\x16\x90U\x7F]\xB9\xEE\nI[\xF2\xE6\xFF\x9C\x91\xA7\x83L\x1B\xA4\xFD\xD2D\xA5\xE8\xAANS{\xD3\x8A\xEA\xE4\xB0s\xAA3[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1V[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x0EUW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FERC20: mint to the zero address\0`D\x82\x01R`d\x01a\x05\xB2V[a\x0Ea`\0\x83\x83a\x10\xAEV[\x80`\x04`\0\x82\x82Ta\x0Es\x91\x90a\x17LV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x81\x81R`\x02` \x90\x81R`@\x80\x83 \x80T\x86\x01\x90UQ\x84\x81R\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x91\x01`@Q\x80\x91\x03\x90\xA3PPV[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x0F,W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`!`$\x82\x01R\x7FERC20: burn from the zero addres`D\x82\x01R`s`\xF8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x0F8\x82`\0\x83a\x10\xAEV[`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x90\x81R`\x02` R`@\x90 T\x81\x81\x10\x15a\x0F\xACW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FERC20: burn amount exceeds balan`D\x82\x01Race`\xF0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x81\x81R`\x02` \x90\x81R`@\x80\x83 \x86\x86\x03\x90U`\x04\x80T\x87\x90\x03\x90UQ\x85\x81R\x91\x92\x91\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x91\x01`@Q\x80\x91\x03\x90\xA3PPPV[a\x10\x14a\x11\xD5V[`\x07\x80T`\xFF\x19\x16`\x01\x17\x90U\x7Fb\xE7\x8C\xEA\x01\xBE\xE3 \xCDNB\x02p\xB5\xEAt\0\r\x11\xB0\xC9\xF7GT\xEB\xDB\xFCTK\x05\xA2Xa\r\xE23\x90V[`\0a\x08\x0E\x83\x83a\x12\x1BV[`\0a\x04H\x82T\x90V[`\0\x81\x81R`\x01\x83\x01` R`@\x81 Ta\x10\xA6WP\x81T`\x01\x81\x81\x01\x84U`\0\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ua\x04HV[P`\0a\x04HV[a\x05A\x83\x83\x83a\x12EV[a\x10\xC3\x82\x82a\x08\x15V[a\x05\xC5Wa\x10\xD0\x81a\x12\xABV[a\x10\xDB\x83` a\x12\xBDV[`@Q` \x01a\x10\xEC\x92\x91\x90a\x16\xA4V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90RbF\x1B\xCD`\xE5\x1B\x82Ra\x05\xB2\x91`\x04\x01a\x17\x19V[a\x11\x1C\x82\x82a\x08\x15V[\x15a\x05\xC5W`\0\x82\x81R` \x81\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x85\x16\x80\x85R\x92R\x80\x83 \x80T`\xFF\x19\x16\x90UQ3\x92\x85\x91\x7F\xF69\x1F\\2\xD9\xC6\x9D*G\xEAg\x0BD)t\xB595\xD1\xED\xC7\xFDd\xEB!\xE0G\xA89\x17\x1B\x91\x90\xA4PPV[`\0a\x08\x0E\x83`\x01`\x01`\xA0\x1B\x03\x84\x16a\x14YV[`\x07T`\xFF\x16a\x06\x8FW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x14`$\x82\x01Rs\x14\x18]\\\xD8X\x9B\x19N\x88\x1B\x9B\xDD\x08\x1C\x18]\\\xD9Y`b\x1B`D\x82\x01R`d\x01a\x05\xB2V[`\x07T`\xFF\x16\x15a\x06\x8FW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x10`$\x82\x01Ro\x14\x18]\\\xD8X\x9B\x19N\x88\x1C\x18]\\\xD9Y`\x82\x1B`D\x82\x01R`d\x01a\x05\xB2V[`\0\x82`\0\x01\x82\x81T\x81\x10a\x122Wa\x122a\x18DV[\x90`\0R` `\0 \x01T\x90P\x92\x91PPV[`\x07T`\xFF\x16\x15a\x05AW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`*`$\x82\x01R\x7FERC20Pausable: token transfer wh`D\x82\x01Ri\x1A[\x19H\x1C\x18]\\\xD9Y`\xB2\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[``a\x04H`\x01`\x01`\xA0\x1B\x03\x83\x16`\x14[```\0a\x12\xCC\x83`\x02a\x17dV[a\x12\xD7\x90`\x02a\x17LV[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x12\xEFWa\x12\xEFa\x18ZV[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x13\x19W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P`\x03`\xFC\x1B\x81`\0\x81Q\x81\x10a\x134Wa\x134a\x18DV[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81`\0\x1A\x90SP`\x0F`\xFB\x1B\x81`\x01\x81Q\x81\x10a\x13cWa\x13ca\x18DV[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81`\0\x1A\x90SP`\0a\x13\x87\x84`\x02a\x17dV[a\x13\x92\x90`\x01a\x17LV[\x90P[`\x01\x81\x11\x15a\x14\nWo\x18\x18\x99\x19\x9A\x1A\x9B\x1B\x9C\x1C\xB0\xB11\xB22\xB3`\x81\x1B\x85`\x0F\x16`\x10\x81\x10a\x13\xC6Wa\x13\xC6a\x18DV[\x1A`\xF8\x1B\x82\x82\x81Q\x81\x10a\x13\xDCWa\x13\xDCa\x18DV[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81`\0\x1A\x90SP`\x04\x94\x90\x94\x1C\x93a\x14\x03\x81a\x17\xC6V[\x90Pa\x13\x95V[P\x83\x15a\x08\x0EW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FStrings: hex length insufficient`D\x82\x01R`d\x01a\x05\xB2V[`\0\x81\x81R`\x01\x83\x01` R`@\x81 T\x80\x15a\x15BW`\0a\x14}`\x01\x83a\x17\x83V[\x85T\x90\x91P`\0\x90a\x14\x91\x90`\x01\x90a\x17\x83V[\x90P\x81\x81\x14a\x14\xF6W`\0\x86`\0\x01\x82\x81T\x81\x10a\x14\xB1Wa\x14\xB1a\x18DV[\x90`\0R` `\0 \x01T\x90P\x80\x87`\0\x01\x84\x81T\x81\x10a\x14\xD4Wa\x14\xD4a\x18DV[`\0\x91\x82R` \x80\x83 \x90\x91\x01\x92\x90\x92U\x91\x82R`\x01\x88\x01\x90R`@\x90 \x83\x90U[\x85T\x86\x90\x80a\x15\x07Wa\x15\x07a\x18.V[`\x01\x90\x03\x81\x81\x90`\0R` `\0 \x01`\0\x90U\x90U\x85`\x01\x01`\0\x86\x81R` \x01\x90\x81R` \x01`\0 `\0\x90U`\x01\x93PPPPa\x04HV[`\0\x91PPa\x04HV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x15cW`\0\x80\xFD[\x91\x90PV[`\0` \x82\x84\x03\x12\x15a\x15zW`\0\x80\xFD[a\x08\x0E\x82a\x15LV[`\0\x80`@\x83\x85\x03\x12\x15a\x15\x96W`\0\x80\xFD[a\x15\x9F\x83a\x15LV[\x91Pa\x15\xAD` \x84\x01a\x15LV[\x90P\x92P\x92\x90PV[`\0\x80`\0``\x84\x86\x03\x12\x15a\x15\xCBW`\0\x80\xFD[a\x15\xD4\x84a\x15LV[\x92Pa\x15\xE2` \x85\x01a\x15LV[\x91P`@\x84\x015\x90P\x92P\x92P\x92V[`\0\x80`@\x83\x85\x03\x12\x15a\x16\x05W`\0\x80\xFD[a\x16\x0E\x83a\x15LV[\x94` \x93\x90\x93\x015\x93PPPV[`\0` \x82\x84\x03\x12\x15a\x16.W`\0\x80\xFD[P5\x91\x90PV[`\0\x80`@\x83\x85\x03\x12\x15a\x16HW`\0\x80\xFD[\x825\x91Pa\x15\xAD` \x84\x01a\x15LV[`\0\x80`@\x83\x85\x03\x12\x15a\x16kW`\0\x80\xFD[PP\x805\x92` \x90\x91\x015\x91PV[`\0` \x82\x84\x03\x12\x15a\x16\x8CW`\0\x80\xFD[\x815`\x01`\x01`\xE0\x1B\x03\x19\x81\x16\x81\x14a\x08\x0EW`\0\x80\xFD[\x7FAccessControl: account \0\0\0\0\0\0\0\0\0\x81R`\0\x83Qa\x16\xDC\x81`\x17\x85\x01` \x88\x01a\x17\x9AV[p\x01\x03K\x99\x03kK\x9B\x9BKs9\x03\x93{c)`}\x1B`\x17\x91\x84\x01\x91\x82\x01R\x83Qa\x17\r\x81`(\x84\x01` \x88\x01a\x17\x9AV[\x01`(\x01\x94\x93PPPPV[` \x81R`\0\x82Q\x80` \x84\x01Ra\x178\x81`@\x85\x01` \x87\x01a\x17\x9AV[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV[`\0\x82\x19\x82\x11\x15a\x17_Wa\x17_a\x18\x18V[P\x01\x90V[`\0\x81`\0\x19\x04\x83\x11\x82\x15\x15\x16\x15a\x17~Wa\x17~a\x18\x18V[P\x02\x90V[`\0\x82\x82\x10\x15a\x17\x95Wa\x17\x95a\x18\x18V[P\x03\x90V[`\0[\x83\x81\x10\x15a\x17\xB5W\x81\x81\x01Q\x83\x82\x01R` \x01a\x17\x9DV[\x83\x81\x11\x15a\x0B\xA3WPP`\0\x91\x01RV[`\0\x81a\x17\xD5Wa\x17\xD5a\x18\x18V[P`\0\x19\x01\x90V[`\x01\x81\x81\x1C\x90\x82\x16\x80a\x17\xF1W`\x7F\x82\x16\x91P[` \x82\x10\x81\x14\x15a\x18\x12WcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[cNH{q`\xE0\x1B`\0R`\x11`\x04R`$`\0\xFD[cNH{q`\xE0\x1B`\0R`1`\x04R`$`\0\xFD[cNH{q`\xE0\x1B`\0R`2`\x04R`$`\0\xFD[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD\xFE\xA2dipfsX\"\x12 \x81\x85\xF7i)\r\xF0@\x99\xFE\xA0\xEE\x88\xD1\xB4c\x97\xAA\xE0Go\xE9Z\x1E\xFE\xCB\x0B\x01\xAD\x07*;dsolcC\0\x08\x05\x003";
/// The bytecode of the contract.
pub static ERC20PRESETMINTERPAUSERCONTRACT_BYTECODE:
::ethers::core::types::Bytes =
::ethers::core::types::Bytes::from_static(__BYTECODE);
#[rustfmt::skip]
const __DEPLOYED_BYTECODE: &[u8] = b"`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\x01\xC4W`\x005`\xE0\x1C\x80cp\xA0\x821\x11a\0\xF9W\x80c\xA4W\xC2\xD7\x11a\0\x97W\x80c\xD59\x13\x93\x11a\0qW\x80c\xD59\x13\x93\x14a\x03\xAFW\x80c\xD5Gt\x1F\x14a\x03\xD6W\x80c\xDDb\xED>\x14a\x03\xE9W\x80c\xE6:\xB1\xE9\x14a\x03\xFCW`\0\x80\xFD[\x80c\xA4W\xC2\xD7\x14a\x03vW\x80c\xA9\x05\x9C\xBB\x14a\x03\x89W\x80c\xCA\x15\xC8s\x14a\x03\x9CW`\0\x80\xFD[\x80c\x90\x10\xD0|\x11a\0\xD3W\x80c\x90\x10\xD0|\x14a\x03(W\x80c\x91\xD1HT\x14a\x03SW\x80c\x95\xD8\x9BA\x14a\x03fW\x80c\xA2\x17\xFD\xDF\x14a\x03nW`\0\x80\xFD[\x80cp\xA0\x821\x14a\x02\xE4W\x80cy\xCCg\x90\x14a\x03\rW\x80c\x84V\xCBY\x14a\x03 W`\0\x80\xFD[\x80c1<\xE5g\x11a\x01fW\x80c?K\xA8:\x11a\x01@W\x80c?K\xA8:\x14a\x02\xABW\x80c@\xC1\x0F\x19\x14a\x02\xB3W\x80cB\x96lh\x14a\x02\xC6W\x80c\\\x97Z\xBB\x14a\x02\xD9W`\0\x80\xFD[\x80c1<\xE5g\x14a\x02vW\x80c6V\x8A\xBE\x14a\x02\x85W\x80c9P\x93Q\x14a\x02\x98W`\0\x80\xFD[\x80c\x18\x16\r\xDD\x11a\x01\xA2W\x80c\x18\x16\r\xDD\x14a\x02\x19W\x80c#\xB8r\xDD\x14a\x02+W\x80c$\x8A\x9C\xA3\x14a\x02>W\x80c//\xF1]\x14a\x02aW`\0\x80\xFD[\x80c\x01\xFF\xC9\xA7\x14a\x01\xC9W\x80c\x06\xFD\xDE\x03\x14a\x01\xF1W\x80c\t^\xA7\xB3\x14a\x02\x06W[`\0\x80\xFD[a\x01\xDCa\x01\xD76`\x04a\x16zV[a\x04#V[`@Q\x90\x15\x15\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x01\xF9a\x04NV[`@Qa\x01\xE8\x91\x90a\x17\x19V[a\x01\xDCa\x02\x146`\x04a\x15\xF2V[a\x04\xE0V[`\x04T[`@Q\x90\x81R` \x01a\x01\xE8V[a\x01\xDCa\x0296`\x04a\x15\xB6V[a\x04\xF8V[a\x02\x1Da\x02L6`\x04a\x16\x1CV[`\0\x90\x81R` \x81\x90R`@\x90 `\x01\x01T\x90V[a\x02ta\x02o6`\x04a\x165V[a\x05\x1CV[\0[`@Q`\x12\x81R` \x01a\x01\xE8V[a\x02ta\x02\x936`\x04a\x165V[a\x05FV[a\x01\xDCa\x02\xA66`\x04a\x15\xF2V[a\x05\xC9V[a\x02ta\x05\xEBV[a\x02ta\x02\xC16`\x04a\x15\xF2V[a\x06\x91V[a\x02ta\x02\xD46`\x04a\x16\x1CV[a\x070V[`\x07T`\xFF\x16a\x01\xDCV[a\x02\x1Da\x02\xF26`\x04a\x15hV[`\x01`\x01`\xA0\x1B\x03\x16`\0\x90\x81R`\x02` R`@\x90 T\x90V[a\x02ta\x03\x1B6`\x04a\x15\xF2V[a\x07=V[a\x02ta\x07RV[a\x03;a\x0366`\x04a\x16XV[a\x07\xF6V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xE8V[a\x01\xDCa\x03a6`\x04a\x165V[a\x08\x15V[a\x01\xF9a\x08>V[a\x02\x1D`\0\x81V[a\x01\xDCa\x03\x846`\x04a\x15\xF2V[a\x08MV[a\x01\xDCa\x03\x976`\x04a\x15\xF2V[a\x08\xC8V[a\x02\x1Da\x03\xAA6`\x04a\x16\x1CV[a\x08\xD6V[a\x02\x1D\x7F\x9F-\xF0\xFE\xD2\xC7vH\xDEX`\xA4\xCCP\x8C\xD0\x81\x8C\x85\xB8\xB8\xA1\xABL\xEE\xEF\x8D\x98\x1C\x89V\xA6\x81V[a\x02ta\x03\xE46`\x04a\x165V[a\x08\xEDV[a\x02\x1Da\x03\xF76`\x04a\x15\x83V[a\t\x12V[a\x02\x1D\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*\x81V[`\0`\x01`\x01`\xE0\x1B\x03\x19\x82\x16cZ\x05\x18\x0F`\xE0\x1B\x14\x80a\x04HWPa\x04H\x82a\t\xD6V[\x92\x91PPV[```\x05\x80Ta\x04]\x90a\x17\xDDV[\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80Ta\x04\x89\x90a\x17\xDDV[\x80\x15a\x04\xD6W\x80`\x1F\x10a\x04\xABWa\x01\0\x80\x83T\x04\x02\x83R\x91` \x01\x91a\x04\xD6V[\x82\x01\x91\x90`\0R` `\0 \x90[\x81T\x81R\x90`\x01\x01\x90` \x01\x80\x83\x11a\x04\xB9W\x82\x90\x03`\x1F\x16\x82\x01\x91[PPPPP\x90P\x90V[`\x003a\x04\xEE\x81\x85\x85a\n\x0BV[P`\x01\x93\x92PPPV[`\x003a\x05\x06\x85\x82\x85a\x0B/V[a\x05\x11\x85\x85\x85a\x0B\xA9V[P`\x01\x94\x93PPPPV[`\0\x82\x81R` \x81\x90R`@\x90 `\x01\x01Ta\x057\x81a\r_V[a\x05A\x83\x83a\riV[PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x163\x14a\x05\xBBW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`/`$\x82\x01R\x7FAccessControl: can only renounce`D\x82\x01Rn\x1097\xB62\xB9\x9037\xB9\x109\xB2\xB63`\x89\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[a\x05\xC5\x82\x82a\r\x8BV[PPV[`\x003a\x04\xEE\x81\x85\x85a\x05\xDC\x83\x83a\t\x12V[a\x05\xE6\x91\x90a\x17LV[a\n\x0BV[a\x06\x15\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*3a\x08\x15V[a\x06\x87W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`9`$\x82\x01R\x7FERC20PresetMinterPauser: must ha`D\x82\x01R\x7Fve pauser role to unpause\0\0\0\0\0\0\0`d\x82\x01R`\x84\x01a\x05\xB2V[a\x06\x8Fa\r\xADV[V[a\x06\xBB\x7F\x9F-\xF0\xFE\xD2\xC7vH\xDEX`\xA4\xCCP\x8C\xD0\x81\x8C\x85\xB8\xB8\xA1\xABL\xEE\xEF\x8D\x98\x1C\x89V\xA63a\x08\x15V[a\x07&W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`6`$\x82\x01R\x7FERC20PresetMinterPauser: must ha`D\x82\x01Ru\x1D\x99H\x1BZ[\x9D\x19\\\x88\x1C\x9B\xDB\x19H\x1D\x1B\xC8\x1BZ[\x9D`R\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x05\xC5\x82\x82a\r\xFFV[a\x07:3\x82a\x0E\xCCV[PV[a\x07H\x823\x83a\x0B/V[a\x05\xC5\x82\x82a\x0E\xCCV[a\x07|\x7Fe\xD7\xA2\x8E2e\xB3zdt\x92\x9F3e!\xB32\xC1h\x1B\x93?l\xB9\xF37fsD\r\x86*3a\x08\x15V[a\x07\xEEW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`7`$\x82\x01R\x7FERC20PresetMinterPauser: must ha`D\x82\x01R\x7Fve pauser role to pause\0\0\0\0\0\0\0\0\0`d\x82\x01R`\x84\x01a\x05\xB2V[a\x06\x8Fa\x10\x0CV[`\0\x82\x81R`\x01` R`@\x81 a\x08\x0E\x90\x83a\x10IV[\x93\x92PPPV[`\0\x91\x82R` \x82\x81R`@\x80\x84 `\x01`\x01`\xA0\x1B\x03\x93\x90\x93\x16\x84R\x91\x90R\x90 T`\xFF\x16\x90V[```\x06\x80Ta\x04]\x90a\x17\xDDV[`\x003\x81a\x08[\x82\x86a\t\x12V[\x90P\x83\x81\x10\x15a\x08\xBBW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`%`$\x82\x01R\x7FERC20: decreased allowance below`D\x82\x01Rd zero`\xD8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x05\x11\x82\x86\x86\x84\x03a\n\x0BV[`\x003a\x04\xEE\x81\x85\x85a\x0B\xA9V[`\0\x81\x81R`\x01` R`@\x81 a\x04H\x90a\x10UV[`\0\x82\x81R` \x81\x90R`@\x90 `\x01\x01Ta\t\x08\x81a\r_V[a\x05A\x83\x83a\r\x8BV[`\x01`\x01`\xA0\x1B\x03\x91\x82\x16`\0\x90\x81R`\x03` \x90\x81R`@\x80\x83 \x93\x90\x94\x16\x82R\x91\x90\x91R T\x90V[a\tG\x82\x82a\x08\x15V[a\x05\xC5W`\0\x82\x81R` \x81\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x85\x16\x84R\x90\x91R\x90 \x80T`\xFF\x19\x16`\x01\x17\x90Ua\t}3\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x81`\x01`\x01`\xA0\x1B\x03\x16\x83\x7F/\x87\x88\x11~~\xFF\x1D\x82\xE9&\xECyI\x01\xD1|x\x02JP'\t@0E@\xA73eo\r`@Q`@Q\x80\x91\x03\x90\xA4PPV[`\0a\x08\x0E\x83`\x01`\x01`\xA0\x1B\x03\x84\x16a\x10_V[`\0`\x01`\x01`\xE0\x1B\x03\x19\x82\x16cye\xDB\x0B`\xE0\x1B\x14\x80a\x04HWPc\x01\xFF\xC9\xA7`\xE0\x1B`\x01`\x01`\xE0\x1B\x03\x19\x83\x16\x14a\x04HV[`\x01`\x01`\xA0\x1B\x03\x83\x16a\nmW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`$\x80\x82\x01R\x7FERC20: approve from the zero add`D\x82\x01Rcress`\xE0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x82\x16a\n\xCEW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FERC20: approve to the zero addre`D\x82\x01Rass`\xF0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\0\x81\x81R`\x03` \x90\x81R`@\x80\x83 \x94\x87\x16\x80\x84R\x94\x82R\x91\x82\x90 \x85\x90U\x90Q\x84\x81R\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91\x01`@Q\x80\x91\x03\x90\xA3PPPV[`\0a\x0B;\x84\x84a\t\x12V[\x90P`\0\x19\x81\x14a\x0B\xA3W\x81\x81\x10\x15a\x0B\x96W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1D`$\x82\x01R\x7FERC20: insufficient allowance\0\0\0`D\x82\x01R`d\x01a\x05\xB2V[a\x0B\xA3\x84\x84\x84\x84\x03a\n\x0BV[PPPPV[`\x01`\x01`\xA0\x1B\x03\x83\x16a\x0C\rW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`%`$\x82\x01R\x7FERC20: transfer from the zero ad`D\x82\x01Rddress`\xD8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x0CoW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`#`$\x82\x01R\x7FERC20: transfer to the zero addr`D\x82\x01Rbess`\xE8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x0Cz\x83\x83\x83a\x10\xAEV[`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x90\x81R`\x02` R`@\x90 T\x81\x81\x10\x15a\x0C\xF2W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FERC20: transfer amount exceeds b`D\x82\x01Realance`\xD0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16`\0\x81\x81R`\x02` R`@\x80\x82 \x86\x86\x03\x90U\x92\x86\x16\x80\x82R\x90\x83\x90 \x80T\x86\x01\x90U\x91Q\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x90a\rR\x90\x86\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3a\x0B\xA3V[a\x07:\x813a\x10\xB9V[a\rs\x82\x82a\t=V[`\0\x82\x81R`\x01` R`@\x90 a\x05A\x90\x82a\t\xC1V[a\r\x95\x82\x82a\x11\x12V[`\0\x82\x81R`\x01` R`@\x90 a\x05A\x90\x82a\x11wV[a\r\xB5a\x11\x8CV[`\x07\x80T`\xFF\x19\x16\x90U\x7F]\xB9\xEE\nI[\xF2\xE6\xFF\x9C\x91\xA7\x83L\x1B\xA4\xFD\xD2D\xA5\xE8\xAANS{\xD3\x8A\xEA\xE4\xB0s\xAA3[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1V[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x0EUW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FERC20: mint to the zero address\0`D\x82\x01R`d\x01a\x05\xB2V[a\x0Ea`\0\x83\x83a\x10\xAEV[\x80`\x04`\0\x82\x82Ta\x0Es\x91\x90a\x17LV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x81\x81R`\x02` \x90\x81R`@\x80\x83 \x80T\x86\x01\x90UQ\x84\x81R\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x91\x01`@Q\x80\x91\x03\x90\xA3PPV[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x0F,W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`!`$\x82\x01R\x7FERC20: burn from the zero addres`D\x82\x01R`s`\xF8\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[a\x0F8\x82`\0\x83a\x10\xAEV[`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x90\x81R`\x02` R`@\x90 T\x81\x81\x10\x15a\x0F\xACW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FERC20: burn amount exceeds balan`D\x82\x01Race`\xF0\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x81\x81R`\x02` \x90\x81R`@\x80\x83 \x86\x86\x03\x90U`\x04\x80T\x87\x90\x03\x90UQ\x85\x81R\x91\x92\x91\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x91\x01`@Q\x80\x91\x03\x90\xA3PPPV[a\x10\x14a\x11\xD5V[`\x07\x80T`\xFF\x19\x16`\x01\x17\x90U\x7Fb\xE7\x8C\xEA\x01\xBE\xE3 \xCDNB\x02p\xB5\xEAt\0\r\x11\xB0\xC9\xF7GT\xEB\xDB\xFCTK\x05\xA2Xa\r\xE23\x90V[`\0a\x08\x0E\x83\x83a\x12\x1BV[`\0a\x04H\x82T\x90V[`\0\x81\x81R`\x01\x83\x01` R`@\x81 Ta\x10\xA6WP\x81T`\x01\x81\x81\x01\x84U`\0\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ua\x04HV[P`\0a\x04HV[a\x05A\x83\x83\x83a\x12EV[a\x10\xC3\x82\x82a\x08\x15V[a\x05\xC5Wa\x10\xD0\x81a\x12\xABV[a\x10\xDB\x83` a\x12\xBDV[`@Q` \x01a\x10\xEC\x92\x91\x90a\x16\xA4V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90RbF\x1B\xCD`\xE5\x1B\x82Ra\x05\xB2\x91`\x04\x01a\x17\x19V[a\x11\x1C\x82\x82a\x08\x15V[\x15a\x05\xC5W`\0\x82\x81R` \x81\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x85\x16\x80\x85R\x92R\x80\x83 \x80T`\xFF\x19\x16\x90UQ3\x92\x85\x91\x7F\xF69\x1F\\2\xD9\xC6\x9D*G\xEAg\x0BD)t\xB595\xD1\xED\xC7\xFDd\xEB!\xE0G\xA89\x17\x1B\x91\x90\xA4PPV[`\0a\x08\x0E\x83`\x01`\x01`\xA0\x1B\x03\x84\x16a\x14YV[`\x07T`\xFF\x16a\x06\x8FW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x14`$\x82\x01Rs\x14\x18]\\\xD8X\x9B\x19N\x88\x1B\x9B\xDD\x08\x1C\x18]\\\xD9Y`b\x1B`D\x82\x01R`d\x01a\x05\xB2V[`\x07T`\xFF\x16\x15a\x06\x8FW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x10`$\x82\x01Ro\x14\x18]\\\xD8X\x9B\x19N\x88\x1C\x18]\\\xD9Y`\x82\x1B`D\x82\x01R`d\x01a\x05\xB2V[`\0\x82`\0\x01\x82\x81T\x81\x10a\x122Wa\x122a\x18DV[\x90`\0R` `\0 \x01T\x90P\x92\x91PPV[`\x07T`\xFF\x16\x15a\x05AW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`*`$\x82\x01R\x7FERC20Pausable: token transfer wh`D\x82\x01Ri\x1A[\x19H\x1C\x18]\\\xD9Y`\xB2\x1B`d\x82\x01R`\x84\x01a\x05\xB2V[``a\x04H`\x01`\x01`\xA0\x1B\x03\x83\x16`\x14[```\0a\x12\xCC\x83`\x02a\x17dV[a\x12\xD7\x90`\x02a\x17LV[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x12\xEFWa\x12\xEFa\x18ZV[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x13\x19W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P`\x03`\xFC\x1B\x81`\0\x81Q\x81\x10a\x134Wa\x134a\x18DV[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81`\0\x1A\x90SP`\x0F`\xFB\x1B\x81`\x01\x81Q\x81\x10a\x13cWa\x13ca\x18DV[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81`\0\x1A\x90SP`\0a\x13\x87\x84`\x02a\x17dV[a\x13\x92\x90`\x01a\x17LV[\x90P[`\x01\x81\x11\x15a\x14\nWo\x18\x18\x99\x19\x9A\x1A\x9B\x1B\x9C\x1C\xB0\xB11\xB22\xB3`\x81\x1B\x85`\x0F\x16`\x10\x81\x10a\x13\xC6Wa\x13\xC6a\x18DV[\x1A`\xF8\x1B\x82\x82\x81Q\x81\x10a\x13\xDCWa\x13\xDCa\x18DV[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81`\0\x1A\x90SP`\x04\x94\x90\x94\x1C\x93a\x14\x03\x81a\x17\xC6V[\x90Pa\x13\x95V[P\x83\x15a\x08\x0EW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FStrings: hex length insufficient`D\x82\x01R`d\x01a\x05\xB2V[`\0\x81\x81R`\x01\x83\x01` R`@\x81 T\x80\x15a\x15BW`\0a\x14}`\x01\x83a\x17\x83V[\x85T\x90\x91P`\0\x90a\x14\x91\x90`\x01\x90a\x17\x83V[\x90P\x81\x81\x14a\x14\xF6W`\0\x86`\0\x01\x82\x81T\x81\x10a\x14\xB1Wa\x14\xB1a\x18DV[\x90`\0R` `\0 \x01T\x90P\x80\x87`\0\x01\x84\x81T\x81\x10a\x14\xD4Wa\x14\xD4a\x18DV[`\0\x91\x82R` \x80\x83 \x90\x91\x01\x92\x90\x92U\x91\x82R`\x01\x88\x01\x90R`@\x90 \x83\x90U[\x85T\x86\x90\x80a\x15\x07Wa\x15\x07a\x18.V[`\x01\x90\x03\x81\x81\x90`\0R` `\0 \x01`\0\x90U\x90U\x85`\x01\x01`\0\x86\x81R` \x01\x90\x81R` \x01`\0 `\0\x90U`\x01\x93PPPPa\x04HV[`\0\x91PPa\x04HV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x15cW`\0\x80\xFD[\x91\x90PV[`\0` \x82\x84\x03\x12\x15a\x15zW`\0\x80\xFD[a\x08\x0E\x82a\x15LV[`\0\x80`@\x83\x85\x03\x12\x15a\x15\x96W`\0\x80\xFD[a\x15\x9F\x83a\x15LV[\x91Pa\x15\xAD` \x84\x01a\x15LV[\x90P\x92P\x92\x90PV[`\0\x80`\0``\x84\x86\x03\x12\x15a\x15\xCBW`\0\x80\xFD[a\x15\xD4\x84a\x15LV[\x92Pa\x15\xE2` \x85\x01a\x15LV[\x91P`@\x84\x015\x90P\x92P\x92P\x92V[`\0\x80`@\x83\x85\x03\x12\x15a\x16\x05W`\0\x80\xFD[a\x16\x0E\x83a\x15LV[\x94` \x93\x90\x93\x015\x93PPPV[`\0` \x82\x84\x03\x12\x15a\x16.W`\0\x80\xFD[P5\x91\x90PV[`\0\x80`@\x83\x85\x03\x12\x15a\x16HW`\0\x80\xFD[\x825\x91Pa\x15\xAD` \x84\x01a\x15LV[`\0\x80`@\x83\x85\x03\x12\x15a\x16kW`\0\x80\xFD[PP\x805\x92` \x90\x91\x015\x91PV[`\0` \x82\x84\x03\x12\x15a\x16\x8CW`\0\x80\xFD[\x815`\x01`\x01`\xE0\x1B\x03\x19\x81\x16\x81\x14a\x08\x0EW`\0\x80\xFD[\x7FAccessControl: account \0\0\0\0\0\0\0\0\0\x81R`\0\x83Qa\x16\xDC\x81`\x17\x85\x01` \x88\x01a\x17\x9AV[p\x01\x03K\x99\x03kK\x9B\x9BKs9\x03\x93{c)`}\x1B`\x17\x91\x84\x01\x91\x82\x01R\x83Qa\x17\r\x81`(\x84\x01` \x88\x01a\x17\x9AV[\x01`(\x01\x94\x93PPPPV[` \x81R`\0\x82Q\x80` \x84\x01Ra\x178\x81`@\x85\x01` \x87\x01a\x17\x9AV[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV[`\0\x82\x19\x82\x11\x15a\x17_Wa\x17_a\x18\x18V[P\x01\x90V[`\0\x81`\0\x19\x04\x83\x11\x82\x15\x15\x16\x15a\x17~Wa\x17~a\x18\x18V[P\x02\x90V[`\0\x82\x82\x10\x15a\x17\x95Wa\x17\x95a\x18\x18V[P\x03\x90V[`\0[\x83\x81\x10\x15a\x17\xB5W\x81\x81\x01Q\x83\x82\x01R` \x01a\x17\x9DV[\x83\x81\x11\x15a\x0B\xA3WPP`\0\x91\x01RV[`\0\x81a\x17\xD5Wa\x17\xD5a\x18\x18V[P`\0\x19\x01\x90V[`\x01\x81\x81\x1C\x90\x82\x16\x80a\x17\xF1W`\x7F\x82\x16\x91P[` \x82\x10\x81\x14\x15a\x18\x12WcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[cNH{q`\xE0\x1B`\0R`\x11`\x04R`$`\0\xFD[cNH{q`\xE0\x1B`\0R`1`\x04R`$`\0\xFD[cNH{q`\xE0\x1B`\0R`2`\x04R`$`\0\xFD[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD\xFE\xA2dipfsX\"\x12 \x81\x85\xF7i)\r\xF0@\x99\xFE\xA0\xEE\x88\xD1\xB4c\x97\xAA\xE0Go\xE9Z\x1E\xFE\xCB\x0B\x01\xAD\x07*;dsolcC\0\x08\x05\x003";
/// The deployed bytecode of the contract.
pub static ERC20PRESETMINTERPAUSERCONTRACT_DEPLOYED_BYTECODE:
::ethers::core::types::Bytes =
::ethers::core::types::Bytes::from_static(__DEPLOYED_BYTECODE);
pub struct ERC20PresetMinterPauserContract<M>(
::ethers::contract::Contract<M>,
);
impl<M> ::core::clone::Clone for ERC20PresetMinterPauserContract<M> {
fn clone(&self) -> Self {
Self(::core::clone::Clone::clone(&self.0))
}
}
impl<M> ::core::ops::Deref for ERC20PresetMinterPauserContract<M> {
type Target = ::ethers::contract::Contract<M>;
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl<M> ::core::ops::DerefMut for ERC20PresetMinterPauserContract<M> {
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl<M> ::core::fmt::Debug for ERC20PresetMinterPauserContract<M> {
fn fmt(
&self,
f: &mut ::core::fmt::Formatter<'_>,
) -> ::core::fmt::Result {
f.debug_tuple(::core::stringify!(ERC20PresetMinterPauserContract))
.field(&self.address())
.finish()
}
}
impl<M: ::ethers::providers::Middleware> ERC20PresetMinterPauserContract<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(),
ERC20PRESETMINTERPAUSERCONTRACT_ABI.clone(),
client,
))
}
/// Constructs the general purpose `Deployer` instance based on the provided constructor arguments and sends it.
/// Returns a new instance of a deployer that returns an instance of this contract after sending the transaction
///
/// Notes:
/// - If there are no constructor arguments, you should pass `()` as the argument.
/// - The default poll duration is 7 seconds.
/// - The default number of confirmations is 1 block.
///
///
/// # Example
///
/// Generate contract bindings with `abigen!` and deploy a new contract instance.
///
/// *Note*: this requires a `bytecode` and `abi` object in the `greeter.json` artifact.
///
/// ```ignore
/// # async fn deploy<M: ethers::providers::Middleware>(client: ::std::sync::Arc<M>) {
/// abigen!(Greeter, "../greeter.json");
///
/// let greeter_contract = Greeter::deploy(client, "Hello world!".to_string()).unwrap().send().await.unwrap();
/// let msg = greeter_contract.greet().call().await.unwrap();
/// # }
/// ```
pub fn deploy<T: ::ethers::core::abi::Tokenize>(
client: ::std::sync::Arc<M>,
constructor_args: T,
) -> ::core::result::Result<
::ethers::contract::builders::ContractDeployer<M, Self>,
::ethers::contract::ContractError<M>,
> {
let factory = ::ethers::contract::ContractFactory::new(
ERC20PRESETMINTERPAUSERCONTRACT_ABI.clone(),
ERC20PRESETMINTERPAUSERCONTRACT_BYTECODE.clone().into(),
client,
);
let deployer = factory.deploy(constructor_args)?;
let deployer = ::ethers::contract::ContractDeployer::new(deployer);
Ok(deployer)
}
///Calls the contract's `DEFAULT_ADMIN_ROLE` (0xa217fddf) function
pub fn default_admin_role(
&self,
) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
self.0
.method_hash([162, 23, 253, 223], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `MINTER_ROLE` (0xd5391393) function
pub fn minter_role(
&self,
) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
self.0
.method_hash([213, 57, 19, 147], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `PAUSER_ROLE` (0xe63ab1e9) function
pub fn pauser_role(
&self,
) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
self.0
.method_hash([230, 58, 177, 233], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `allowance` (0xdd62ed3e) function
pub fn allowance(
&self,
owner: ::ethers::core::types::Address,
spender: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::U256,
> {
self.0
.method_hash([221, 98, 237, 62], (owner, spender))
.expect("method not found (this should never happen)")
}
///Calls the contract's `approve` (0x095ea7b3) function
pub fn approve(
&self,
spender: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([9, 94, 167, 179], (spender, amount))
.expect("method not found (this should never happen)")
}
///Calls the contract's `balanceOf` (0x70a08231) function
pub fn balance_of(
&self,
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::U256,
> {
self.0
.method_hash([112, 160, 130, 49], account)
.expect("method not found (this should never happen)")
}
///Calls the contract's `burn` (0x42966c68) function
pub fn burn(
&self,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([66, 150, 108, 104], amount)
.expect("method not found (this should never happen)")
}
///Calls the contract's `burnFrom` (0x79cc6790) function
pub fn burn_from(
&self,
account: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([121, 204, 103, 144], (account, 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 `decreaseAllowance` (0xa457c2d7) function
pub fn decrease_allowance(
&self,
spender: ::ethers::core::types::Address,
subtracted_value: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([164, 87, 194, 215], (spender, subtracted_value))
.expect("method not found (this should never happen)")
}
///Calls the contract's `getRoleAdmin` (0x248a9ca3) function
pub fn get_role_admin(
&self,
role: [u8; 32],
) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
self.0
.method_hash([36, 138, 156, 163], role)
.expect("method not found (this should never happen)")
}
///Calls the contract's `getRoleMember` (0x9010d07c) function
pub fn get_role_member(
&self,
role: [u8; 32],
index: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::Address,
> {
self.0
.method_hash([144, 16, 208, 124], (role, index))
.expect("method not found (this should never happen)")
}
///Calls the contract's `getRoleMemberCount` (0xca15c873) function
pub fn get_role_member_count(
&self,
role: [u8; 32],
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::U256,
> {
self.0
.method_hash([202, 21, 200, 115], role)
.expect("method not found (this should never happen)")
}
///Calls the contract's `grantRole` (0x2f2ff15d) function
pub fn grant_role(
&self,
role: [u8; 32],
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([47, 47, 241, 93], (role, account))
.expect("method not found (this should never happen)")
}
///Calls the contract's `hasRole` (0x91d14854) function
pub fn has_role(
&self,
role: [u8; 32],
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([145, 209, 72, 84], (role, account))
.expect("method not found (this should never happen)")
}
///Calls the contract's `increaseAllowance` (0x39509351) function
pub fn increase_allowance(
&self,
spender: ::ethers::core::types::Address,
added_value: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([57, 80, 147, 81], (spender, added_value))
.expect("method not found (this should never happen)")
}
///Calls the contract's `mint` (0x40c10f19) function
pub fn mint(
&self,
to: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([64, 193, 15, 25], (to, amount))
.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 `pause` (0x8456cb59) function
pub fn pause(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([132, 86, 203, 89], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `paused` (0x5c975abb) function
pub fn paused(
&self,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([92, 151, 90, 187], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `renounceRole` (0x36568abe) function
pub fn renounce_role(
&self,
role: [u8; 32],
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([54, 86, 138, 190], (role, account))
.expect("method not found (this should never happen)")
}
///Calls the contract's `revokeRole` (0xd547741f) function
pub fn revoke_role(
&self,
role: [u8; 32],
account: ::ethers::core::types::Address,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([213, 71, 116, 31], (role, account))
.expect("method not found (this should never happen)")
}
///Calls the contract's `supportsInterface` (0x01ffc9a7) function
pub fn supports_interface(
&self,
interface_id: [u8; 4],
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([1, 255, 201, 167], interface_id)
.expect("method not found (this should never happen)")
}
///Calls the contract's `symbol` (0x95d89b41) function
pub fn symbol(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String>
{
self.0
.method_hash([149, 216, 155, 65], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `totalSupply` (0x18160ddd) function
pub fn total_supply(
&self,
) -> ::ethers::contract::builders::ContractCall<
M,
::ethers::core::types::U256,
> {
self.0
.method_hash([24, 22, 13, 221], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `transfer` (0xa9059cbb) function
pub fn transfer(
&self,
to: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([169, 5, 156, 187], (to, amount))
.expect("method not found (this should never happen)")
}
///Calls the contract's `transferFrom` (0x23b872dd) function
pub fn transfer_from(
&self,
from: ::ethers::core::types::Address,
to: ::ethers::core::types::Address,
amount: ::ethers::core::types::U256,
) -> ::ethers::contract::builders::ContractCall<M, bool> {
self.0
.method_hash([35, 184, 114, 221], (from, to, amount))
.expect("method not found (this should never happen)")
}
///Calls the contract's `unpause` (0x3f4ba83a) function
pub fn unpause(
&self,
) -> ::ethers::contract::builders::ContractCall<M, ()> {
self.0
.method_hash([63, 75, 168, 58], ())
.expect("method not found (this should never happen)")
}
///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 `Paused` event
pub fn paused_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
PausedFilter,
> {
self.0.event()
}
///Gets the contract's `RoleAdminChanged` event
pub fn role_admin_changed_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
RoleAdminChangedFilter,
> {
self.0.event()
}
///Gets the contract's `RoleGranted` event
pub fn role_granted_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
RoleGrantedFilter,
> {
self.0.event()
}
///Gets the contract's `RoleRevoked` event
pub fn role_revoked_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
RoleRevokedFilter,
> {
self.0.event()
}
///Gets the contract's `Transfer` event
pub fn transfer_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
TransferFilter,
> {
self.0.event()
}
///Gets the contract's `Unpaused` event
pub fn unpaused_filter(
&self,
) -> ::ethers::contract::builders::Event<
::std::sync::Arc<M>,
M,
UnpausedFilter,
> {
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,
ERC20PresetMinterPauserContractEvents,
> {
self.0
.event_with_filter(::core::default::Default::default())
}
}
impl<M: ::ethers::providers::Middleware>
From<::ethers::contract::Contract<M>>
for ERC20PresetMinterPauserContract<M>
{
fn from(contract: ::ethers::contract::Contract<M>) -> Self {
Self::new(contract.address(), contract.client())
}
}
#[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 = "Paused", abi = "Paused(address)")]
pub struct PausedFilter {
pub account: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethevent(
name = "RoleAdminChanged",
abi = "RoleAdminChanged(bytes32,bytes32,bytes32)"
)]
pub struct RoleAdminChangedFilter {
#[ethevent(indexed)]
pub role: [u8; 32],
#[ethevent(indexed)]
pub previous_admin_role: [u8; 32],
#[ethevent(indexed)]
pub new_admin_role: [u8; 32],
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethevent(
name = "RoleGranted",
abi = "RoleGranted(bytes32,address,address)"
)]
pub struct RoleGrantedFilter {
#[ethevent(indexed)]
pub role: [u8; 32],
#[ethevent(indexed)]
pub account: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub sender: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethevent(
name = "RoleRevoked",
abi = "RoleRevoked(bytes32,address,address)"
)]
pub struct RoleRevokedFilter {
#[ethevent(indexed)]
pub role: [u8; 32],
#[ethevent(indexed)]
pub account: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub sender: ::ethers::core::types::Address,
}
#[derive(
Clone,
::ethers::contract::EthEvent,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")]
pub struct TransferFilter {
#[ethevent(indexed)]
pub from: ::ethers::core::types::Address,
#[ethevent(indexed)]
pub to: ::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 = "Unpaused", abi = "Unpaused(address)")]
pub struct UnpausedFilter {
pub account: ::ethers::core::types::Address,
}
///Container type for all of the contract's events
#[derive(
Clone,
::ethers::contract::EthAbiType,
serde::Serialize,
serde::Deserialize,
Debug,
PartialEq,
Eq,
Hash,
)]
pub enum ERC20PresetMinterPauserContractEvents {
ApprovalFilter(ApprovalFilter),
PausedFilter(PausedFilter),
RoleAdminChangedFilter(RoleAdminChangedFilter),
RoleGrantedFilter(RoleGrantedFilter),
RoleRevokedFilter(RoleRevokedFilter),
TransferFilter(TransferFilter),
UnpausedFilter(UnpausedFilter),
}
impl ::ethers::contract::EthLogDecode
for ERC20PresetMinterPauserContractEvents
{
fn decode_log(
log: &::ethers::core::abi::RawLog,
) -> ::core::result::Result<Self, ::ethers::core::abi::Error> {
if let Ok(decoded) = ApprovalFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::ApprovalFilter(
decoded,
),
);
}
if let Ok(decoded) = PausedFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::PausedFilter(
decoded,
),
);
}
if let Ok(decoded) = RoleAdminChangedFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::RoleAdminChangedFilter(
decoded,
),
);
}
if let Ok(decoded) = RoleGrantedFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::RoleGrantedFilter(
decoded,
),
);
}
if let Ok(decoded) = RoleRevokedFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::RoleRevokedFilter(
decoded,
),
);
}
if let Ok(decoded) = TransferFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::TransferFilter(
decoded,
),
);
}
if let Ok(decoded) = UnpausedFilter::decode_log(log) {
return Ok(
ERC20PresetMinterPauserContractEvents::UnpausedFilter(
decoded,
),
);
}
Err(::ethers::core::abi::Error::InvalidData)
}
}
impl ::core::fmt::Display for ERC20PresetMinterPauserContractEvents {
fn fmt(
&self,
f: &mut ::core::fmt::Formatter<'_>,
) -> ::core::fmt::Result {
match self {
Self::ApprovalFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::PausedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RoleAdminChangedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RoleGrantedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RoleRevokedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::TransferFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::UnpausedFilter(element) => {
::core::fmt::Display::fmt(element, f)
}
}
}
}
impl ::core::convert::From<ApprovalFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: ApprovalFilter) -> Self {
Self::ApprovalFilter(value)
}
}
impl ::core::convert::From<PausedFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: PausedFilter) -> Self {
Self::PausedFilter(value)
}
}
impl ::core::convert::From<RoleAdminChangedFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: RoleAdminChangedFilter) -> Self {
Self::RoleAdminChangedFilter(value)
}
}
impl ::core::convert::From<RoleGrantedFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: RoleGrantedFilter) -> Self {
Self::RoleGrantedFilter(value)
}
}
impl ::core::convert::From<RoleRevokedFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: RoleRevokedFilter) -> Self {
Self::RoleRevokedFilter(value)
}
}
impl ::core::convert::From<TransferFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: TransferFilter) -> Self {
Self::TransferFilter(value)
}
}
impl ::core::convert::From<UnpausedFilter>
for ERC20PresetMinterPauserContractEvents
{
fn from(value: UnpausedFilter) -> Self {
Self::UnpausedFilter(value)
}
}
///Container type for all input parameters for the `DEFAULT_ADMIN_ROLE` function with signature `DEFAULT_ADMIN_ROLE()` and selector `0xa217fddf`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "DEFAULT_ADMIN_ROLE", abi = "DEFAULT_ADMIN_ROLE()")]
pub struct DefaultAdminRoleCall;
///Container type for all input parameters for the `MINTER_ROLE` function with signature `MINTER_ROLE()` and selector `0xd5391393`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "MINTER_ROLE", abi = "MINTER_ROLE()")]
pub struct MinterRoleCall;
///Container type for all input parameters for the `PAUSER_ROLE` function with signature `PAUSER_ROLE()` and selector `0xe63ab1e9`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "PAUSER_ROLE", abi = "PAUSER_ROLE()")]
pub struct PauserRoleCall;
///Container type for all input parameters for the `allowance` function with signature `allowance(address,address)` and selector `0xdd62ed3e`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "allowance", abi = "allowance(address,address)")]
pub struct AllowanceCall {
pub owner: ::ethers::core::types::Address,
pub spender: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `approve` function with signature `approve(address,uint256)` and selector `0x095ea7b3`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "approve", abi = "approve(address,uint256)")]
pub struct ApproveCall {
pub spender: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `balanceOf` function with signature `balanceOf(address)` and selector `0x70a08231`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "balanceOf", abi = "balanceOf(address)")]
pub struct BalanceOfCall {
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `burn` function with signature `burn(uint256)` and selector `0x42966c68`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "burn", abi = "burn(uint256)")]
pub struct BurnCall {
pub amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `burnFrom` function with signature `burnFrom(address,uint256)` and selector `0x79cc6790`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "burnFrom", abi = "burnFrom(address,uint256)")]
pub struct BurnFromCall {
pub account: ::ethers::core::types::Address,
pub 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 `decreaseAllowance` function with signature `decreaseAllowance(address,uint256)` and selector `0xa457c2d7`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(
name = "decreaseAllowance",
abi = "decreaseAllowance(address,uint256)"
)]
pub struct DecreaseAllowanceCall {
pub spender: ::ethers::core::types::Address,
pub subtracted_value: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `getRoleAdmin` function with signature `getRoleAdmin(bytes32)` and selector `0x248a9ca3`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "getRoleAdmin", abi = "getRoleAdmin(bytes32)")]
pub struct GetRoleAdminCall {
pub role: [u8; 32],
}
///Container type for all input parameters for the `getRoleMember` function with signature `getRoleMember(bytes32,uint256)` and selector `0x9010d07c`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "getRoleMember", abi = "getRoleMember(bytes32,uint256)")]
pub struct GetRoleMemberCall {
pub role: [u8; 32],
pub index: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `getRoleMemberCount` function with signature `getRoleMemberCount(bytes32)` and selector `0xca15c873`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "getRoleMemberCount", abi = "getRoleMemberCount(bytes32)")]
pub struct GetRoleMemberCountCall {
pub role: [u8; 32],
}
///Container type for all input parameters for the `grantRole` function with signature `grantRole(bytes32,address)` and selector `0x2f2ff15d`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "grantRole", abi = "grantRole(bytes32,address)")]
pub struct GrantRoleCall {
pub role: [u8; 32],
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `hasRole` function with signature `hasRole(bytes32,address)` and selector `0x91d14854`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "hasRole", abi = "hasRole(bytes32,address)")]
pub struct HasRoleCall {
pub role: [u8; 32],
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `increaseAllowance` function with signature `increaseAllowance(address,uint256)` and selector `0x39509351`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(
name = "increaseAllowance",
abi = "increaseAllowance(address,uint256)"
)]
pub struct IncreaseAllowanceCall {
pub spender: ::ethers::core::types::Address,
pub added_value: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `mint` function with signature `mint(address,uint256)` and selector `0x40c10f19`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "mint", abi = "mint(address,uint256)")]
pub struct MintCall {
pub to: ::ethers::core::types::Address,
pub amount: ::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 `pause` function with signature `pause()` and selector `0x8456cb59`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "pause", abi = "pause()")]
pub struct PauseCall;
///Container type for all input parameters for the `paused` function with signature `paused()` and selector `0x5c975abb`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "paused", abi = "paused()")]
pub struct PausedCall;
///Container type for all input parameters for the `renounceRole` function with signature `renounceRole(bytes32,address)` and selector `0x36568abe`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "renounceRole", abi = "renounceRole(bytes32,address)")]
pub struct RenounceRoleCall {
pub role: [u8; 32],
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `revokeRole` function with signature `revokeRole(bytes32,address)` and selector `0xd547741f`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "revokeRole", abi = "revokeRole(bytes32,address)")]
pub struct RevokeRoleCall {
pub role: [u8; 32],
pub account: ::ethers::core::types::Address,
}
///Container type for all input parameters for the `supportsInterface` function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "supportsInterface", abi = "supportsInterface(bytes4)")]
pub struct SupportsInterfaceCall {
pub interface_id: [u8; 4],
}
///Container type for all input parameters for the `symbol` function with signature `symbol()` and selector `0x95d89b41`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "symbol", abi = "symbol()")]
pub struct SymbolCall;
///Container type for all input parameters for the `totalSupply` function with signature `totalSupply()` and selector `0x18160ddd`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "totalSupply", abi = "totalSupply()")]
pub struct TotalSupplyCall;
///Container type for all input parameters for the `transfer` function with signature `transfer(address,uint256)` and selector `0xa9059cbb`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "transfer", abi = "transfer(address,uint256)")]
pub struct TransferCall {
pub to: ::ethers::core::types::Address,
pub amount: ::ethers::core::types::U256,
}
///Container type for all input parameters for the `transferFrom` function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(
name = "transferFrom",
abi = "transferFrom(address,address,uint256)"
)]
pub struct TransferFromCall {
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 `unpause` function with signature `unpause()` and selector `0x3f4ba83a`
#[derive(
Clone,
::ethers::contract::EthCall,
::ethers::contract::EthDisplay,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
#[ethcall(name = "unpause", abi = "unpause()")]
pub struct UnpauseCall;
///Container type for all of the contract's call
#[derive(
Clone,
::ethers::contract::EthAbiType,
serde::Serialize,
serde::Deserialize,
Debug,
PartialEq,
Eq,
Hash,
)]
pub enum ERC20PresetMinterPauserContractCalls {
DefaultAdminRole(DefaultAdminRoleCall),
MinterRole(MinterRoleCall),
PauserRole(PauserRoleCall),
Allowance(AllowanceCall),
Approve(ApproveCall),
BalanceOf(BalanceOfCall),
Burn(BurnCall),
BurnFrom(BurnFromCall),
Decimals(DecimalsCall),
DecreaseAllowance(DecreaseAllowanceCall),
GetRoleAdmin(GetRoleAdminCall),
GetRoleMember(GetRoleMemberCall),
GetRoleMemberCount(GetRoleMemberCountCall),
GrantRole(GrantRoleCall),
HasRole(HasRoleCall),
IncreaseAllowance(IncreaseAllowanceCall),
Mint(MintCall),
Name(NameCall),
Pause(PauseCall),
Paused(PausedCall),
RenounceRole(RenounceRoleCall),
RevokeRole(RevokeRoleCall),
SupportsInterface(SupportsInterfaceCall),
Symbol(SymbolCall),
TotalSupply(TotalSupplyCall),
Transfer(TransferCall),
TransferFrom(TransferFromCall),
Unpause(UnpauseCall),
}
impl ::ethers::core::abi::AbiDecode for ERC20PresetMinterPauserContractCalls {
fn decode(
data: impl AsRef<[u8]>,
) -> ::core::result::Result<Self, ::ethers::core::abi::AbiError>
{
let data = data.as_ref();
if let Ok(decoded) =
<DefaultAdminRoleCall as ::ethers::core::abi::AbiDecode>::decode(
data,
)
{
return Ok(Self::DefaultAdminRole(decoded));
}
if let Ok(decoded) =
<MinterRoleCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::MinterRole(decoded));
}
if let Ok(decoded) =
<PauserRoleCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::PauserRole(decoded));
}
if let Ok(decoded) =
<AllowanceCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Allowance(decoded));
}
if let Ok(decoded) =
<ApproveCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Approve(decoded));
}
if let Ok(decoded) =
<BalanceOfCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::BalanceOf(decoded));
}
if let Ok(decoded) =
<BurnCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Burn(decoded));
}
if let Ok(decoded) =
<BurnFromCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::BurnFrom(decoded));
}
if let Ok(decoded) =
<DecimalsCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Decimals(decoded));
}
if let Ok(decoded) = <DecreaseAllowanceCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::DecreaseAllowance(decoded));
}
if let Ok(decoded) =
<GetRoleAdminCall as ::ethers::core::abi::AbiDecode>::decode(
data,
)
{
return Ok(Self::GetRoleAdmin(decoded));
}
if let Ok(decoded) =
<GetRoleMemberCall as ::ethers::core::abi::AbiDecode>::decode(
data,
)
{
return Ok(Self::GetRoleMember(decoded));
}
if let Ok(decoded) = <GetRoleMemberCountCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::GetRoleMemberCount(decoded));
}
if let Ok(decoded) =
<GrantRoleCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::GrantRole(decoded));
}
if let Ok(decoded) =
<HasRoleCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::HasRole(decoded));
}
if let Ok(decoded) = <IncreaseAllowanceCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::IncreaseAllowance(decoded));
}
if let Ok(decoded) =
<MintCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Mint(decoded));
}
if let Ok(decoded) =
<NameCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Name(decoded));
}
if let Ok(decoded) =
<PauseCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Pause(decoded));
}
if let Ok(decoded) =
<PausedCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Paused(decoded));
}
if let Ok(decoded) =
<RenounceRoleCall as ::ethers::core::abi::AbiDecode>::decode(
data,
)
{
return Ok(Self::RenounceRole(decoded));
}
if let Ok(decoded) =
<RevokeRoleCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::RevokeRole(decoded));
}
if let Ok(decoded) = <SupportsInterfaceCall as ::ethers::core::abi::AbiDecode>::decode(
data,
) {
return Ok(Self::SupportsInterface(decoded));
}
if let Ok(decoded) =
<SymbolCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Symbol(decoded));
}
if let Ok(decoded) =
<TotalSupplyCall as ::ethers::core::abi::AbiDecode>::decode(
data,
)
{
return Ok(Self::TotalSupply(decoded));
}
if let Ok(decoded) =
<TransferCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Transfer(decoded));
}
if let Ok(decoded) =
<TransferFromCall as ::ethers::core::abi::AbiDecode>::decode(
data,
)
{
return Ok(Self::TransferFrom(decoded));
}
if let Ok(decoded) =
<UnpauseCall as ::ethers::core::abi::AbiDecode>::decode(data)
{
return Ok(Self::Unpause(decoded));
}
Err(::ethers::core::abi::Error::InvalidData.into())
}
}
impl ::ethers::core::abi::AbiEncode for ERC20PresetMinterPauserContractCalls {
fn encode(self) -> Vec<u8> {
match self {
Self::DefaultAdminRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::MinterRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::PauserRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Allowance(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Approve(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::BalanceOf(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Burn(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::BurnFrom(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Decimals(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::DecreaseAllowance(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetRoleAdmin(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetRoleMember(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GetRoleMemberCount(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::GrantRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::HasRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::IncreaseAllowance(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Mint(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Name(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Pause(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Paused(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::RenounceRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::RevokeRole(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::SupportsInterface(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Symbol(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::TotalSupply(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Transfer(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::TransferFrom(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Unpause(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
}
}
}
impl ::core::fmt::Display for ERC20PresetMinterPauserContractCalls {
fn fmt(
&self,
f: &mut ::core::fmt::Formatter<'_>,
) -> ::core::fmt::Result {
match self {
Self::DefaultAdminRole(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::MinterRole(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::PauserRole(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Allowance(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Approve(element) => ::core::fmt::Display::fmt(element, f),
Self::BalanceOf(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Burn(element) => ::core::fmt::Display::fmt(element, f),
Self::BurnFrom(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Decimals(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::DecreaseAllowance(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GetRoleAdmin(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GetRoleMember(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GetRoleMemberCount(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::GrantRole(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::HasRole(element) => ::core::fmt::Display::fmt(element, f),
Self::IncreaseAllowance(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Mint(element) => ::core::fmt::Display::fmt(element, f),
Self::Name(element) => ::core::fmt::Display::fmt(element, f),
Self::Pause(element) => ::core::fmt::Display::fmt(element, f),
Self::Paused(element) => ::core::fmt::Display::fmt(element, f),
Self::RenounceRole(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::RevokeRole(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::SupportsInterface(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Symbol(element) => ::core::fmt::Display::fmt(element, f),
Self::TotalSupply(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Transfer(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::TransferFrom(element) => {
::core::fmt::Display::fmt(element, f)
}
Self::Unpause(element) => ::core::fmt::Display::fmt(element, f),
}
}
}
impl ::core::convert::From<DefaultAdminRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: DefaultAdminRoleCall) -> Self {
Self::DefaultAdminRole(value)
}
}
impl ::core::convert::From<MinterRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: MinterRoleCall) -> Self {
Self::MinterRole(value)
}
}
impl ::core::convert::From<PauserRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: PauserRoleCall) -> Self {
Self::PauserRole(value)
}
}
impl ::core::convert::From<AllowanceCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: AllowanceCall) -> Self {
Self::Allowance(value)
}
}
impl ::core::convert::From<ApproveCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: ApproveCall) -> Self {
Self::Approve(value)
}
}
impl ::core::convert::From<BalanceOfCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: BalanceOfCall) -> Self {
Self::BalanceOf(value)
}
}
impl ::core::convert::From<BurnCall> for ERC20PresetMinterPauserContractCalls {
fn from(value: BurnCall) -> Self {
Self::Burn(value)
}
}
impl ::core::convert::From<BurnFromCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: BurnFromCall) -> Self {
Self::BurnFrom(value)
}
}
impl ::core::convert::From<DecimalsCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: DecimalsCall) -> Self {
Self::Decimals(value)
}
}
impl ::core::convert::From<DecreaseAllowanceCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: DecreaseAllowanceCall) -> Self {
Self::DecreaseAllowance(value)
}
}
impl ::core::convert::From<GetRoleAdminCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: GetRoleAdminCall) -> Self {
Self::GetRoleAdmin(value)
}
}
impl ::core::convert::From<GetRoleMemberCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: GetRoleMemberCall) -> Self {
Self::GetRoleMember(value)
}
}
impl ::core::convert::From<GetRoleMemberCountCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: GetRoleMemberCountCall) -> Self {
Self::GetRoleMemberCount(value)
}
}
impl ::core::convert::From<GrantRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: GrantRoleCall) -> Self {
Self::GrantRole(value)
}
}
impl ::core::convert::From<HasRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: HasRoleCall) -> Self {
Self::HasRole(value)
}
}
impl ::core::convert::From<IncreaseAllowanceCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: IncreaseAllowanceCall) -> Self {
Self::IncreaseAllowance(value)
}
}
impl ::core::convert::From<MintCall> for ERC20PresetMinterPauserContractCalls {
fn from(value: MintCall) -> Self {
Self::Mint(value)
}
}
impl ::core::convert::From<NameCall> for ERC20PresetMinterPauserContractCalls {
fn from(value: NameCall) -> Self {
Self::Name(value)
}
}
impl ::core::convert::From<PauseCall> for ERC20PresetMinterPauserContractCalls {
fn from(value: PauseCall) -> Self {
Self::Pause(value)
}
}
impl ::core::convert::From<PausedCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: PausedCall) -> Self {
Self::Paused(value)
}
}
impl ::core::convert::From<RenounceRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: RenounceRoleCall) -> Self {
Self::RenounceRole(value)
}
}
impl ::core::convert::From<RevokeRoleCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: RevokeRoleCall) -> Self {
Self::RevokeRole(value)
}
}
impl ::core::convert::From<SupportsInterfaceCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: SupportsInterfaceCall) -> Self {
Self::SupportsInterface(value)
}
}
impl ::core::convert::From<SymbolCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: SymbolCall) -> Self {
Self::Symbol(value)
}
}
impl ::core::convert::From<TotalSupplyCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: TotalSupplyCall) -> Self {
Self::TotalSupply(value)
}
}
impl ::core::convert::From<TransferCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: TransferCall) -> Self {
Self::Transfer(value)
}
}
impl ::core::convert::From<TransferFromCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: TransferFromCall) -> Self {
Self::TransferFrom(value)
}
}
impl ::core::convert::From<UnpauseCall>
for ERC20PresetMinterPauserContractCalls
{
fn from(value: UnpauseCall) -> Self {
Self::Unpause(value)
}
}
///Container type for all return fields from the `DEFAULT_ADMIN_ROLE` function with signature `DEFAULT_ADMIN_ROLE()` and selector `0xa217fddf`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct DefaultAdminRoleReturn(pub [u8; 32]);
///Container type for all return fields from the `MINTER_ROLE` function with signature `MINTER_ROLE()` and selector `0xd5391393`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct MinterRoleReturn(pub [u8; 32]);
///Container type for all return fields from the `PAUSER_ROLE` function with signature `PAUSER_ROLE()` and selector `0xe63ab1e9`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct PauserRoleReturn(pub [u8; 32]);
///Container type for all return fields from the `allowance` function with signature `allowance(address,address)` and selector `0xdd62ed3e`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct AllowanceReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `approve` function with signature `approve(address,uint256)` and selector `0x095ea7b3`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct ApproveReturn(pub bool);
///Container type for all return fields from the `balanceOf` function with signature `balanceOf(address)` and selector `0x70a08231`
#[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 `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 `decreaseAllowance` function with signature `decreaseAllowance(address,uint256)` and selector `0xa457c2d7`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct DecreaseAllowanceReturn(pub bool);
///Container type for all return fields from the `getRoleAdmin` function with signature `getRoleAdmin(bytes32)` and selector `0x248a9ca3`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct GetRoleAdminReturn(pub [u8; 32]);
///Container type for all return fields from the `getRoleMember` function with signature `getRoleMember(bytes32,uint256)` and selector `0x9010d07c`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct GetRoleMemberReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `getRoleMemberCount` function with signature `getRoleMemberCount(bytes32)` and selector `0xca15c873`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct GetRoleMemberCountReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `hasRole` function with signature `hasRole(bytes32,address)` and selector `0x91d14854`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct HasRoleReturn(pub bool);
///Container type for all return fields from the `increaseAllowance` function with signature `increaseAllowance(address,uint256)` and selector `0x39509351`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct IncreaseAllowanceReturn(pub bool);
///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 `paused` function with signature `paused()` and selector `0x5c975abb`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct PausedReturn(pub bool);
///Container type for all return fields from the `supportsInterface` function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct SupportsInterfaceReturn(pub bool);
///Container type for all return fields from the `symbol` function with signature `symbol()` and selector `0x95d89b41`
#[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 `totalSupply` function with signature `totalSupply()` and selector `0x18160ddd`
#[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 `transfer` function with signature `transfer(address,uint256)` and selector `0xa9059cbb`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct TransferReturn(pub bool);
///Container type for all return fields from the `transferFrom` function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`
#[derive(
Clone,
::ethers::contract::EthAbiType,
::ethers::contract::EthAbiCodec,
serde::Serialize,
serde::Deserialize,
Default,
Debug,
PartialEq,
Eq,
Hash,
)]
pub struct TransferFromReturn(pub bool);
}