diff --git a/packages/contracts/test/EmailAccountRecovery.t.sol b/packages/contracts/test/EmailAccountRecovery.t.sol
index e15979bf..a69d4a84 100644
--- a/packages/contracts/test/EmailAccountRecovery.t.sol
+++ b/packages/contracts/test/EmailAccountRecovery.t.sol
@@ -685,7 +685,7 @@ contract EmailAccountRecoveryTest is StructHelper {
assertEq(simpleWallet.owner(), deployer);
assertEq(simpleWallet.newSignerCandidate(), newSigner);
- vm.startPrank(deployer);
+ vm.startPrank(someRelayer);
vm.warp(4 days);
simpleWallet.completeRecovery();
vm.stopPrank();
@@ -704,7 +704,7 @@ contract EmailAccountRecoveryTest is StructHelper {
assertEq(simpleWallet.owner(), deployer);
assertEq(simpleWallet.newSignerCandidate(), address(0x0));
- vm.startPrank(deployer);
+ vm.startPrank(someRelayer);
vm.warp(4 days);
vm.expectRevert(bytes("recovery not in progress"));
simpleWallet.completeRecovery();
@@ -726,7 +726,7 @@ contract EmailAccountRecoveryTest is StructHelper {
vm.warp(0);
- vm.startPrank(deployer);
+ vm.startPrank(someRelayer);
vm.expectRevert(bytes("timelock not expired"));
simpleWallet.completeRecovery();
vm.stopPrank();
diff --git a/packages/relayer/src/abis/ecdsa_owned_dkim_registry.rs b/packages/relayer/src/abis/ecdsa_owned_dkim_registry.rs
index 9b7230aa..0c3f5909 100644
--- a/packages/relayer/src/abis/ecdsa_owned_dkim_registry.rs
+++ b/packages/relayer/src/abis/ecdsa_owned_dkim_registry.rs
@@ -7,307 +7,316 @@ pub use ecdsa_owned_dkim_registry::*;
clippy::upper_case_acronyms,
clippy::type_complexity,
dead_code,
- non_camel_case_types,
+ non_camel_case_types
)]
pub mod ecdsa_owned_dkim_registry {
#[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("_signer"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("address"),
- ),
- },
- ],
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_signer"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(::std::borrow::ToOwned::to_owned(
+ "address"
+ ),),
+ },],
}),
functions: ::core::convert::From::from([
(
::std::borrow::ToOwned::to_owned("REVOKE_PREFIX"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("REVOKE_PREFIX"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("REVOKE_PREFIX"),
+ 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("SET_PREFIX"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("SET_PREFIX"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("SET_PREFIX"),
+ 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("computeSignedMsg"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("computeSignedMsg"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("prefix"),
- 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("selector"),
- 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("domainName"),
- 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("publicKeyHash"),
- 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::String,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("string"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::Pure,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("computeSignedMsg"),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("prefix"),
+ 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("selector"),
+ 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("domainName"),
+ 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("publicKeyHash"),
+ 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::String,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("string"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::Pure,
+ },],
),
(
::std::borrow::ToOwned::to_owned("dkimRegistry"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("dkimRegistry"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("contract DKIMRegistry"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("dkimRegistry"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("contract DKIMRegistry"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("isDKIMPublicKeyHashValid"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "isDKIMPublicKeyHashValid",
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("isDKIMPublicKeyHashValid",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("domainName"),
+ 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("publicKeyHash"),
+ 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::Bool,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bool"),
),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("domainName"),
- 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("publicKeyHash"),
- 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::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,
- },
- ],
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("revokeDKIMPublicKeyHash"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "revokeDKIMPublicKeyHash",
- ),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("selector"),
- 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("domainName"),
- 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("publicKeyHash"),
- 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("signature"),
- kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("revokeDKIMPublicKeyHash",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("selector"),
+ 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("domainName"),
+ 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("publicKeyHash"),
+ 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("signature"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("setDKIMPublicKeyHash"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "setDKIMPublicKeyHash",
- ),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("selector"),
- 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("domainName"),
- 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("publicKeyHash"),
- 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("signature"),
- kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("setDKIMPublicKeyHash",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("selector"),
+ 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("domainName"),
+ 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("publicKeyHash"),
+ 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("signature"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("signer"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("signer"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("address"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("signer"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
]),
events: ::std::collections::BTreeMap::new(),
- errors: ::std::collections::BTreeMap::new(),
+ errors: ::core::convert::From::from([
+ (
+ ::std::borrow::ToOwned::to_owned("ECDSAInvalidSignature"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("ECDSAInvalidSignature",),
+ inputs: ::std::vec![],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("ECDSAInvalidSignatureLength"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("ECDSAInvalidSignatureLength",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("length"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
+ ),
+ },],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("ECDSAInvalidSignatureS"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("ECDSAInvalidSignatureS",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("s"),
+ kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes32"),
+ ),
+ },],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("StringsInsufficientHexLength"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("StringsInsufficientHexLength",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("value"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
+ ),
+ },
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("length"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
+ ),
+ },
+ ],
+ },],
+ ),
+ ]),
receive: false,
fallback: false,
}
}
///The parsed JSON ABI of the contract.
- pub static ECDSAOWNEDDKIMREGISTRY_ABI: ::ethers::contract::Lazy<
- ::ethers::core::abi::Abi,
- > = ::ethers::contract::Lazy::new(__abi);
+ pub static ECDSAOWNEDDKIMREGISTRY_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\"\x958\x03\x80b\0\"\x95\x839\x81\x01`@\x81\x90Rb\0\x004\x91b\0\0\xA3V[`@Qb\0\0B\x90b\0\0\x95V[`@Q\x80\x91\x03\x90`\0\xF0\x80\x15\x80\x15b\0\0_W=`\0\x80>=`\0\xFD[P`\0\x80T`\x01`\x01`\xA0\x1B\x03\x92\x83\x16`\x01`\x01`\xA0\x1B\x03\x19\x91\x82\x16\x17\x90\x91U`\x01\x80T\x93\x90\x92\x16\x92\x16\x91\x90\x91\x17\x90Ub\0\0\xD5V[a\t\x9B\x80b\0\x18\xFA\x839\x01\x90V[`\0` \x82\x84\x03\x12\x15b\0\0\xB6W`\0\x80\xFD[\x81Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14b\0\0\xCEW`\0\x80\xFD[\x93\x92PPPV[a\x18\x15\x80b\0\0\xE5`\09`\0\xF3\xFE`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0\x88W`\x005`\xE0\x1C\x80c\xAE\xC7\x93a\x11a\0[W\x80c\xAE\xC7\x93a\x14a\x01YW\x80c\xD5\x07\xC3 \x14a\x01lW\x80c\xE7\xA7\x97z\x14a\x01\xA8W\x80c\xF6\xB4\x93D\x14a\x01\xCBW`\0\x80\xFD[\x80c\x07\xF1\xEA\xF5\x14a\0\x8DW\x80c#\x8A\xC93\x14a\0\xDFW\x80cd#\xF1\xE2\x14a\x01$W\x80c\x97\x17\x0F+\x14a\x01DW[`\0\x80\xFD[a\0\xC9`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x81V[`@Qa\0\xD6\x91\x90a\x12\xE3V[`@Q\x80\x91\x03\x90\xF3[`\x01Ta\0\xFF\x90s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81V[`@Qs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\0\xD6V[`\0Ta\0\xFF\x90s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81V[a\x01Wa\x01R6`\x04a\x13\xD9V[a\x01\xDEV[\0[a\0\xC9a\x01g6`\x04a\x14\x7FV[a\x06\x03V[a\0\xC9`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x81V[a\x01\xBBa\x01\xB66`\x04a\x15\x0FV[a\x06=V[`@Q\x90\x15\x15\x81R` \x01a\0\xD6V[a\x01Wa\x01\xD96`\x04a\x13\xD9V[a\x06\xE0V[\x83Q`\0\x03a\x02NW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[\x82Q`\0\x03a\x02\xB9W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x03 W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x03*\x83\x83a\x06=V[\x15a\x03\x91W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FpublicKeyHash is already set\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x04\0W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x04$\x91\x90a\x15TV[\x15a\x04\x8BW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is revoked\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0a\x04\xCE`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\x04\xDB\x82a\n\xC8V[\x90P`\0a\x04\xE9\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\x05pW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\xC1\\\xFF\xAB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xC1\\\xFF\xAB\x90a\x05\xC8\x90\x89\x90\x89\x90`\x04\x01a\x15vV[`\0`@Q\x80\x83\x03\x81`\0\x87\x80;\x15\x80\x15a\x05\xE2W`\0\x80\xFD[PZ\xF1\x15\x80\x15a\x05\xF6W=`\0\x80>=`\0\xFD[PPPPPPPPPPPV[``\x84\x84\x84a\x06\x11\x85a\x0B'V[`@Q` \x01a\x06$\x94\x93\x92\x91\x90a\x15\x98V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x94\x93PPPPV[`\0\x80T`@Q\x7F\xE7\xA7\x97z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xE7\xA7\x97z\x90a\x06\x96\x90\x86\x90\x86\x90`\x04\x01a\x15vV[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06\xB3W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\xD7\x91\x90a\x15TV[\x90P[\x92\x91PPV[\x83Q`\0\x03a\x07KW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x82Q`\0\x03a\x07\xB6W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x08\x1DW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x08'\x83\x83a\x06=V[\x15\x15`\x01\x14a\x08\x92W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is not set\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\t\x01W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\t%\x91\x90a\x15TV[\x15a\t\x8CW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FpublicKeyHash is already revoked`D\x82\x01R`d\x01a\x02EV[`\0a\t\xCF`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\t\xDC\x82a\n\xC8V[\x90P`\0a\t\xEA\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\nqW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\x15\xD2Q.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x87\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\x15\xD2Q.\x90`$\x01a\x05\xC8V[`\0a\n\xD4\x82Qa\x0B>V[\x82`@Q` \x01a\n\xE6\x92\x91\x90a\x16\x98V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[`\0\x80`\0a\x0B\x12\x85\x85a\x0B\xFCV[\x91P\x91Pa\x0B\x1F\x81a\x0CAV[P\x93\x92PPPV[``a\x06\xDA\x82a\x0B6\x84a\r\xF7V[`\x01\x01a\x0EaV[```\0a\x0BK\x83a\x10\xA4V[`\x01\x01\x90P`\0\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0BkWa\x0Bka\x12\xF6V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x0B\x95W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P\x81\x81\x01` \x01[\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x7F0123456789abcdef\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\n\x86\x06\x1A\x81S`\n\x85\x04\x94P\x84a\x0B\x9FWP\x93\x92PPPV[`\0\x80\x82Q`A\x03a\x0C2W` \x83\x01Q`@\x84\x01Q``\x85\x01Q`\0\x1Aa\x0C&\x87\x82\x85\x85a\x11\x86V[\x94P\x94PPPPa\x0C:V[P`\0\x90P`\x02[\x92P\x92\x90PV[`\0\x81`\x04\x81\x11\x15a\x0CUWa\x0CUa\x16\xF3V[\x03a\x0C]WPV[`\x01\x81`\x04\x81\x11\x15a\x0CqWa\x0Cqa\x16\xF3V[\x03a\x0C\xD8W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FECDSA: invalid signature\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\x02\x81`\x04\x81\x11\x15a\x0C\xECWa\x0C\xECa\x16\xF3V[\x03a\rSW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FECDSA: invalid signature length\0`D\x82\x01R`d\x01a\x02EV[`\x03\x81`\x04\x81\x11\x15a\rgWa\rga\x16\xF3V[\x03a\r\xF4W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FECDSA: invalid signature 's' val`D\x82\x01R\x7Fue\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`d\x82\x01R`\x84\x01a\x02EV[PV[`\0\x80`\x80\x83\x90\x1C\x15a\x0E\x0FW`\x80\x92\x90\x92\x1C\x91`\x10\x01[`@\x83\x90\x1C\x15a\x0E$W`@\x92\x90\x92\x1C\x91`\x08\x01[` \x83\x90\x1C\x15a\x0E9W` \x92\x90\x92\x1C\x91`\x04\x01[`\x10\x83\x90\x1C\x15a\x0ENW`\x10\x92\x90\x92\x1C\x91`\x02\x01[`\x08\x83\x90\x1C\x15a\x06\xDAW`\x01\x01\x92\x91PPV[```\0a\x0Ep\x83`\x02a\x17QV[a\x0E{\x90`\x02a\x17hV[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0E\x93Wa\x0E\x93a\x12\xF6V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x0E\xBDW` \x82\x01\x81\x806\x837\x01\x90P[P\x90P\x7F0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81`\0\x81Q\x81\x10a\x0E\xF4Wa\x0E\xF4a\x17{V[` \x01\x01\x90~\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x90\x81`\0\x1A\x90SP\x7Fx\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81`\x01\x81Q\x81\x10a\x0FWWa\x0FWa\x17{V[` \x01\x01\x90~\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x90\x81`\0\x1A\x90SP`\0a\x0F\x93\x84`\x02a\x17QV[a\x0F\x9E\x90`\x01a\x17hV[\x90P[`\x01\x81\x11\x15a\x10;W\x7F0123456789abcdef\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x85`\x0F\x16`\x10\x81\x10a\x0F\xDFWa\x0F\xDFa\x17{V[\x1A`\xF8\x1B\x82\x82\x81Q\x81\x10a\x0F\xF5Wa\x0F\xF5a\x17{V[` \x01\x01\x90~\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x90\x81`\0\x1A\x90SP`\x04\x94\x90\x94\x1C\x93a\x104\x81a\x17\xAAV[\x90Pa\x0F\xA1V[P\x83\x15a\x06\xD7W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FStrings: hex length insufficient`D\x82\x01R`d\x01a\x02EV[`\0\x80z\x18O\x03\xE9?\xF9\xF4\xDA\xA7\x97\xEDn8\xEDd\xBFj\x1F\x01\0\0\0\0\0\0\0\0\x83\x10a\x10\xEDWz\x18O\x03\xE9?\xF9\xF4\xDA\xA7\x97\xEDn8\xEDd\xBFj\x1F\x01\0\0\0\0\0\0\0\0\x83\x04\x92P`@\x01[m\x04\xEE-mA[\x85\xAC\xEF\x81\0\0\0\0\x83\x10a\x11\x19Wm\x04\xEE-mA[\x85\xAC\xEF\x81\0\0\0\0\x83\x04\x92P` \x01[f#\x86\xF2o\xC1\0\0\x83\x10a\x117Wf#\x86\xF2o\xC1\0\0\x83\x04\x92P`\x10\x01[c\x05\xF5\xE1\0\x83\x10a\x11OWc\x05\xF5\xE1\0\x83\x04\x92P`\x08\x01[a'\x10\x83\x10a\x11cWa'\x10\x83\x04\x92P`\x04\x01[`d\x83\x10a\x11uW`d\x83\x04\x92P`\x02\x01[`\n\x83\x10a\x06\xDAW`\x01\x01\x92\x91PPV[`\0\x80\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x83\x11\x15a\x11\xBDWP`\0\x90P`\x03a\x12lV[`@\x80Q`\0\x80\x82R` \x82\x01\x80\x84R\x89\x90R`\xFF\x88\x16\x92\x82\x01\x92\x90\x92R``\x81\x01\x86\x90R`\x80\x81\x01\x85\x90R`\x01\x90`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15a\x12\x11W=`\0\x80>=`\0\xFD[PP`@Q\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x01Q\x91PPs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x16a\x12eW`\0`\x01\x92P\x92PPa\x12lV[\x91P`\0\x90P[\x94P\x94\x92PPPV[`\0[\x83\x81\x10\x15a\x12\x90W\x81\x81\x01Q\x83\x82\x01R` \x01a\x12xV[PP`\0\x91\x01RV[`\0\x81Q\x80\x84Ra\x12\xB1\x81` \x86\x01` \x86\x01a\x12uV[`\x1F\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R`\0a\x06\xD7` \x83\x01\x84a\x12\x99V[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`A`\x04R`$`\0\xFD[`\0g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x84\x11\x15a\x13@Wa\x13@a\x12\xF6V[`@Q`\x1F\x85\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15a\x13\x86Wa\x13\x86a\x12\xF6V[\x81`@R\x80\x93P\x85\x81R\x86\x86\x86\x01\x11\x15a\x13\x9FW`\0\x80\xFD[\x85\x85` \x83\x017`\0` \x87\x83\x01\x01RPPP\x93\x92PPPV[`\0\x82`\x1F\x83\x01\x12a\x13\xCAW`\0\x80\xFD[a\x06\xD7\x83\x835` \x85\x01a\x13%V[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x13\xEFW`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x14\x07W`\0\x80\xFD[a\x14\x13\x88\x83\x89\x01a\x13\xB9V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x14)W`\0\x80\xFD[a\x145\x88\x83\x89\x01a\x13\xB9V[\x94P`@\x87\x015\x93P``\x87\x015\x91P\x80\x82\x11\x15a\x14RW`\0\x80\xFD[P\x85\x01`\x1F\x81\x01\x87\x13a\x14dW`\0\x80\xFD[a\x14s\x87\x825` \x84\x01a\x13%V[\x91PP\x92\x95\x91\x94P\x92PV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x14\x95W`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x14\xADW`\0\x80\xFD[a\x14\xB9\x88\x83\x89\x01a\x13\xB9V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x14\xCFW`\0\x80\xFD[a\x14\xDB\x88\x83\x89\x01a\x13\xB9V[\x94P`@\x87\x015\x91P\x80\x82\x11\x15a\x14\xF1W`\0\x80\xFD[Pa\x14\xFE\x87\x82\x88\x01a\x13\xB9V[\x94\x97\x93\x96P\x93\x94``\x015\x93PPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x15\"W`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x159W`\0\x80\xFD[a\x15E\x85\x82\x86\x01a\x13\xB9V[\x95` \x94\x90\x94\x015\x94PPPPV[`\0` \x82\x84\x03\x12\x15a\x15fW`\0\x80\xFD[\x81Q\x80\x15\x15\x81\x14a\x06\xD7W`\0\x80\xFD[`@\x81R`\0a\x15\x89`@\x83\x01\x85a\x12\x99V[\x90P\x82` \x83\x01R\x93\x92PPPV[`\0\x85Qa\x15\xAA\x81\x84` \x8A\x01a\x12uV[\x7Fselector=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x90\x83\x01\x90\x81R\x85Qa\x15\xE4\x81`\t\x84\x01` \x8A\x01a\x12uV[\x7F;domain=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\t\x92\x90\x91\x01\x91\x82\x01R\x84Qa\x16\"\x81`\x11\x84\x01` \x89\x01a\x12uV[\x7F;public_key_hash=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\x11\x92\x90\x91\x01\x91\x82\x01R\x83Qa\x16`\x81`\"\x84\x01` \x88\x01a\x12uV[\x7F;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\"\x92\x90\x91\x01\x91\x82\x01R`#\x01\x96\x95PPPPPPV[\x7F\x19Ethereum Signed Message:\n\0\0\0\0\0\0\x81R`\0\x83Qa\x16\xD0\x81`\x1A\x85\x01` \x88\x01a\x12uV[\x83Q\x90\x83\x01\x90a\x16\xE7\x81`\x1A\x84\x01` \x88\x01a\x12uV[\x01`\x1A\x01\x94\x93PPPPV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`!`\x04R`$`\0\xFD[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`\x11`\x04R`$`\0\xFD[\x80\x82\x02\x81\x15\x82\x82\x04\x84\x14\x17a\x06\xDAWa\x06\xDAa\x17\"V[\x80\x82\x01\x80\x82\x11\x15a\x06\xDAWa\x06\xDAa\x17\"V[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`2`\x04R`$`\0\xFD[`\0\x81a\x17\xB9Wa\x17\xB9a\x17\"V[P\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x90V\xFE\xA2dipfsX\"\x12 \x8C\xC9
\x90a\0\x9FV[`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90`\0\xF0\x80\x15\x80\x15a\0jW=`\0\x80>=`\0\xFD[P`\0\x80T`\x01`\x01`\xA0\x1B\x03\x92\x83\x16`\x01`\x01`\xA0\x1B\x03\x19\x91\x82\x16\x17\x90\x91U`\x01\x80T\x93\x90\x92\x16\x92\x16\x91\x90\x91\x17\x90Ua\0\xDDV[a\t\x99\x80b\0\x18W\x839\x01\x90V[`\0` \x82\x84\x03\x12\x15a\0\xBFW`\0\x80\xFD[\x81Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\0\xD6W`\0\x80\xFD[\x93\x92PPPV[a\x17j\x80b\0\0\xED`\09`\0\xF3\xFE`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0\x88W`\x005`\xE0\x1C\x80c\xAE\xC7\x93a\x11a\0[W\x80c\xAE\xC7\x93a\x14a\x01YW\x80c\xD5\x07\xC3 \x14a\x01lW\x80c\xE7\xA7\x97z\x14a\x01\xA8W\x80c\xF6\xB4\x93D\x14a\x01\xCBW`\0\x80\xFD[\x80c\x07\xF1\xEA\xF5\x14a\0\x8DW\x80c#\x8A\xC93\x14a\0\xDFW\x80cd#\xF1\xE2\x14a\x01$W\x80c\x97\x17\x0F+\x14a\x01DW[`\0\x80\xFD[a\0\xC9`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x81V[`@Qa\0\xD6\x91\x90a\x121V[`@Q\x80\x91\x03\x90\xF3[`\x01Ta\0\xFF\x90s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81V[`@Qs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\0\xD6V[`\0Ta\0\xFF\x90s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81V[a\x01Wa\x01R6`\x04a\x13'V[a\x01\xDEV[\0[a\0\xC9a\x01g6`\x04a\x13\xCDV[a\x06\x03V[a\0\xC9`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x81V[a\x01\xBBa\x01\xB66`\x04a\x14]V[a\x06=V[`@Q\x90\x15\x15\x81R` \x01a\0\xD6V[a\x01Wa\x01\xD96`\x04a\x13'V[a\x06\xE0V[\x83Q`\0\x03a\x02NW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[\x82Q`\0\x03a\x02\xB9W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x03 W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x03*\x83\x83a\x06=V[\x15a\x03\x91W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FpublicKeyHash is already set\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x04\0W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x04$\x91\x90a\x14\xA2V[\x15a\x04\x8BW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is revoked\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0a\x04\xCE`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\x04\xDB\x82a\n\xC8V[\x90P`\0a\x04\xE9\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\x05pW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\xC1\\\xFF\xAB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xC1\\\xFF\xAB\x90a\x05\xC8\x90\x89\x90\x89\x90`\x04\x01a\x14\xCBV[`\0`@Q\x80\x83\x03\x81`\0\x87\x80;\x15\x80\x15a\x05\xE2W`\0\x80\xFD[PZ\xF1\x15\x80\x15a\x05\xF6W=`\0\x80>=`\0\xFD[PPPPPPPPPPPV[``\x84\x84\x84a\x06\x11\x85a\x0B-V[`@Q` \x01a\x06$\x94\x93\x92\x91\x90a\x14\xEDV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x94\x93PPPPV[`\0\x80T`@Q\x7F\xE7\xA7\x97z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xE7\xA7\x97z\x90a\x06\x96\x90\x86\x90\x86\x90`\x04\x01a\x14\xCBV[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06\xB3W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\xD7\x91\x90a\x14\xA2V[\x90P[\x92\x91PPV[\x83Q`\0\x03a\x07KW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x82Q`\0\x03a\x07\xB6W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x08\x1DW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x08'\x83\x83a\x06=V[\x15\x15`\x01\x14a\x08\x92W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is not set\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\t\x01W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\t%\x91\x90a\x14\xA2V[\x15a\t\x8CW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FpublicKeyHash is already revoked`D\x82\x01R`d\x01a\x02EV[`\0a\t\xCF`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\t\xDC\x82a\n\xC8V[\x90P`\0a\t\xEA\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\nqW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\x15\xD2Q.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x87\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\x15\xD2Q.\x90`$\x01a\x05\xC8V[`\0a\n\xD4\x82Qa\x0BDV[\x82`@Q` \x01a\n\xE6\x92\x91\x90a\x15\xEDV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[`\0\x80`\0\x80a\x0B\x13\x86\x86a\x0C\x02V[\x92P\x92P\x92Pa\x0B#\x82\x82a\x0COV[P\x90\x94\x93PPPPV[``a\x06\xDA\x82a\x0B<\x84a\rWV[`\x01\x01a\r\xC1V[```\0a\x0BQ\x83a\x0F\xE7V[`\x01\x01\x90P`\0\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0BqWa\x0Bqa\x12DV[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x0B\x9BW` \x82\x01\x81\x806\x837\x01\x90P[P\x90P\x81\x81\x01` \x01[\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x7F0123456789abcdef\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\n\x86\x06\x1A\x81S`\n\x85\x04\x94P\x84a\x0B\xA5WP\x93\x92PPPV[`\0\x80`\0\x83Q`A\x03a\x0C=`\0\xFD[PP`@Q\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x01Q\x91PPs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x16a\x11\xAFWP`\0\x92P`\x01\x91P\x82\x90Pa\x11\xB9V[\x92P`\0\x91P\x81\x90P[\x94P\x94P\x94\x91PPV[`\0[\x83\x81\x10\x15a\x11\xDEW\x81\x81\x01Q\x83\x82\x01R` \x01a\x11\xC6V[PP`\0\x91\x01RV[`\0\x81Q\x80\x84Ra\x11\xFF\x81` \x86\x01` \x86\x01a\x11\xC3V[`\x1F\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R`\0a\x06\xD7` \x83\x01\x84a\x11\xE7V[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`A`\x04R`$`\0\xFD[`\0g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x84\x11\x15a\x12\x8EWa\x12\x8Ea\x12DV[`@Q`\x1F\x85\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15a\x12\xD4Wa\x12\xD4a\x12DV[\x81`@R\x80\x93P\x85\x81R\x86\x86\x86\x01\x11\x15a\x12\xEDW`\0\x80\xFD[\x85\x85` \x83\x017`\0` \x87\x83\x01\x01RPPP\x93\x92PPPV[`\0\x82`\x1F\x83\x01\x12a\x13\x18W`\0\x80\xFD[a\x06\xD7\x83\x835` \x85\x01a\x12sV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x13=W`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x13UW`\0\x80\xFD[a\x13a\x88\x83\x89\x01a\x13\x07V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x13wW`\0\x80\xFD[a\x13\x83\x88\x83\x89\x01a\x13\x07V[\x94P`@\x87\x015\x93P``\x87\x015\x91P\x80\x82\x11\x15a\x13\xA0W`\0\x80\xFD[P\x85\x01`\x1F\x81\x01\x87\x13a\x13\xB2W`\0\x80\xFD[a\x13\xC1\x87\x825` \x84\x01a\x12sV[\x91PP\x92\x95\x91\x94P\x92PV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x13\xE3W`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x13\xFBW`\0\x80\xFD[a\x14\x07\x88\x83\x89\x01a\x13\x07V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x14\x1DW`\0\x80\xFD[a\x14)\x88\x83\x89\x01a\x13\x07V[\x94P`@\x87\x015\x91P\x80\x82\x11\x15a\x14?W`\0\x80\xFD[Pa\x14L\x87\x82\x88\x01a\x13\x07V[\x94\x97\x93\x96P\x93\x94``\x015\x93PPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x14pW`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x14\x87W`\0\x80\xFD[a\x14\x93\x85\x82\x86\x01a\x13\x07V[\x95` \x94\x90\x94\x015\x94PPPPV[`\0` \x82\x84\x03\x12\x15a\x14\xB4W`\0\x80\xFD[\x81Q\x80\x15\x15\x81\x14a\x14\xC4W`\0\x80\xFD[\x93\x92PPPV[`@\x81R`\0a\x14\xDE`@\x83\x01\x85a\x11\xE7V[\x90P\x82` \x83\x01R\x93\x92PPPV[`\0\x85Qa\x14\xFF\x81\x84` \x8A\x01a\x11\xC3V[\x7Fselector=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x90\x83\x01\x90\x81R\x85Qa\x159\x81`\t\x84\x01` \x8A\x01a\x11\xC3V[\x7F;domain=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\t\x92\x90\x91\x01\x91\x82\x01R\x84Qa\x15w\x81`\x11\x84\x01` \x89\x01a\x11\xC3V[\x7F;public_key_hash=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\x11\x92\x90\x91\x01\x91\x82\x01R\x83Qa\x15\xB5\x81`\"\x84\x01` \x88\x01a\x11\xC3V[\x7F;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\"\x92\x90\x91\x01\x91\x82\x01R`#\x01\x96\x95PPPPPPV[\x7F\x19Ethereum Signed Message:\n\0\0\0\0\0\0\x81R`\0\x83Qa\x16%\x81`\x1A\x85\x01` \x88\x01a\x11\xC3V[\x83Q\x90\x83\x01\x90a\x16<\x81`\x1A\x84\x01` \x88\x01a\x11\xC3V[\x01`\x1A\x01\x94\x93PPPPV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`!`\x04R`$`\0\xFD[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`\x11`\x04R`$`\0\xFD[\x80\x82\x02\x81\x15\x82\x82\x04\x84\x14\x17a\x06\xDAWa\x06\xDAa\x16wV[\x80\x82\x01\x80\x82\x11\x15a\x06\xDAWa\x06\xDAa\x16wV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`2`\x04R`$`\0\xFD[`\0\x81a\x17\x0EWa\x17\x0Ea\x16wV[P\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x90V\xFE\xA2dipfsX\"\x12 d\xE7I\x84:X\x98\xC3\xE6\xA0\xDE\x83\x93\xF1\xF0\xA3e\xD5@U@?\xAC\xD6\x1CQ\x89\xBA\x96\xF6\x07mdsolcC\0\x08\x17\x003`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`@Qa\t\x998\x03\x80a\t\x99\x839\x81\x01`@\x81\x90Ra\0/\x91a\0\xBEV[\x80`\x01`\x01`\xA0\x1B\x03\x81\x16a\0^W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R`\0`\x04\x82\x01R`$\x01`@Q\x80\x91\x03\x90\xFD[a\0g\x81a\0nV[PPa\0\xEEV[`\0\x80T`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x01`\x01`\xA0\x1B\x03\x19\x83\x16\x81\x17\x84U`@Q\x91\x90\x92\x16\x92\x83\x91\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x91\x90\xA3PPV[`\0` \x82\x84\x03\x12\x15a\0\xD0W`\0\x80\xFD[\x81Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\0\xE7W`\0\x80\xFD[\x93\x92PPPV[a\x08\x9C\x80a\0\xFD`\09`\0\xF3\xFE`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0\xA3W`\x005`\xE0\x1C\x80c\x8D\xA5\xCB[\x11a\0vW\x80c\xE7\xA7\x97z\x11a\0[W\x80c\xE7\xA7\x97z\x14a\x01vW\x80c\xF2\xFD\xE3\x8B\x14a\x01\x89W\x80c\xF4\x9E\xB1d\x14a\x01\x9CW`\0\x80\xFD[\x80c\x8D\xA5\xCB[\x14a\x01;W\x80c\xC1\\\xFF\xAB\x14a\x01cW`\0\x80\xFD[\x80c\x06\x90\xBD8\x14a\0\xA8W\x80c\x15\xD2Q.\x14a\0\xFBW\x80cB\xD7\xCB\x98\x14a\x01\x10W\x80cqP\x18\xA6\x14a\x013W[`\0\x80\xFD[a\0\xE6a\0\xB66`\x04a\x069V[\x81Q` \x81\x84\x01\x81\x01\x80Q`\x01\x82R\x92\x82\x01\x94\x82\x01\x94\x90\x94 \x91\x90\x93R\x90\x91R`\0\x90\x81R`@\x90 T`\xFF\x16\x81V[`@Q\x90\x15\x15\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x01\x0Ea\x01\t6`\x04a\x06~V[a\x01\xAFV[\0[a\0\xE6a\x01\x1E6`\x04a\x06~V[`\x02` R`\0\x90\x81R`@\x90 T`\xFF\x16\x81V[a\x01\x0Ea\x02+V[`\0T`@Qs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\0\xF2V[a\x01\x0Ea\x01q6`\x04a\x069V[a\x02?V[a\0\xE6a\x01\x846`\x04a\x069V[a\x03YV[a\x01\x0Ea\x01\x976`\x04a\x06\x97V[a\x03\xBDV[a\x01\x0Ea\x01\xAA6`\x04a\x06\xD4V[a\x04!V[a\x01\xB7a\x04eV[`\0\x81\x81R`\x02` R`@\x90\x81\x90 \x80T\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x16`\x01\x17\x90UQ\x7F\xB8\x0F\xFF+Lo=\xDF\x80Hw\x92|w\xB2\xFE\x18q\xCE\xCA\xA5\xADC\xD2\xC7\xC4/As1\xF8e\x90a\x02 \x90\x83\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA1PV[a\x023a\x04eV[a\x02=`\0a\x04\xB8V[V[a\x02Ga\x04eV[`\0\x81\x81R`\x02` R`@\x90 T`\xFF\x16\x15a\x02\xC5W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x19`$\x82\x01R\x7Fcannot set revoked pubkey\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[`\x01\x80\x83`@Qa\x02\xD6\x91\x90a\x07\xC2V[\x90\x81R`@\x80Q` \x92\x81\x90\x03\x83\x01\x81 `\0\x86\x81R\x93R\x91 \x80T\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x16\x92\x15\x15\x92\x90\x92\x17\x90\x91U\x7FQ\r\xAC\x88\xEA\xF2\xDF\xBDS\x90BA\xFC\x19\x9A\xD4k c\xE6\xBFl?\xB2\x91\xF8\xCE\x86Cf4\x19\x90a\x03M\x90\x84\x90\x84\x90a\x07\xDEV[`@Q\x80\x91\x03\x90\xA1PPV[`\0\x81\x81R`\x02` R`@\x81 T`\xFF\x16\x15a\x03xWP`\0a\x03\xB7V[`\x01\x83`@Qa\x03\x88\x91\x90a\x07\xC2V[\x90\x81R`@\x80Q` \x92\x81\x90\x03\x83\x01\x90 `\0\x85\x81R\x92R\x90 T`\xFF\x16\x15a\x03\xB3WP`\x01a\x03\xB7V[P`\0[\x92\x91PPV[a\x03\xC5a\x04eV[s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x16a\x04\x15W`@Q\x7F\x1EO\xBD\xF7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\0`\x04\x82\x01R`$\x01a\x02\xBCV[a\x04\x1E\x81a\x04\xB8V[PV[a\x04)a\x04eV[`\0[\x81Q\x81\x10\x15a\x04`Wa\x04X\x83\x83\x83\x81Q\x81\x10a\x04KWa\x04Ka\x087V[` \x02` \x01\x01Qa\x02?V[`\x01\x01a\x04,V[PPPV[`\0Ts\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x163\x14a\x02=W`@Q\x7F\x11\x8C\xDA\xA7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R3`\x04\x82\x01R`$\x01a\x02\xBCV[`\0\x80Ts\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x81\x16\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x83\x16\x81\x17\x84U`@Q\x91\x90\x92\x16\x92\x83\x91\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x91\x90\xA3PPV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`A`\x04R`$`\0\xFD[`@Q`\x1F\x82\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x16\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a\x05\xA3Wa\x05\xA3a\x05-V[`@R\x91\x90PV[`\0\x82`\x1F\x83\x01\x12a\x05\xBCW`\0\x80\xFD[\x815g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x05\xD6Wa\x05\xD6a\x05-V[a\x06\x07` \x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0`\x1F\x84\x01\x16\x01a\x05\\V[\x81\x81R\x84` \x83\x86\x01\x01\x11\x15a\x06\x1CW`\0\x80\xFD[\x81` \x85\x01` \x83\x017`\0\x91\x81\x01` \x01\x91\x90\x91R\x93\x92PPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x06LW`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06cW`\0\x80\xFD[a\x06o\x85\x82\x86\x01a\x05\xABV[\x95` \x94\x90\x94\x015\x94PPPPV[`\0` \x82\x84\x03\x12\x15a\x06\x90W`\0\x80\xFD[P5\x91\x90PV[`\0` \x82\x84\x03\x12\x15a\x06\xA9W`\0\x80\xFD[\x815s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\x06\xCDW`\0\x80\xFD[\x93\x92PPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x06\xE7W`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x06\xFFW`\0\x80\xFD[a\x07\x0B\x86\x83\x87\x01a\x05\xABV[\x93P` \x91P\x81\x85\x015\x81\x81\x11\x15a\x07\"W`\0\x80\xFD[\x85\x01`\x1F\x81\x01\x87\x13a\x073W`\0\x80\xFD[\x805\x82\x81\x11\x15a\x07EWa\x07Ea\x05-V[\x80`\x05\x1B\x92Pa\x07V\x84\x84\x01a\x05\\V[\x81\x81R\x92\x82\x01\x84\x01\x92\x84\x81\x01\x90\x89\x85\x11\x15a\x07pW`\0\x80\xFD[\x92\x85\x01\x92[\x84\x84\x10\x15a\x07\x8EW\x835\x82R\x92\x85\x01\x92\x90\x85\x01\x90a\x07uV[\x80\x96PPPPPPP\x92P\x92\x90PV[`\0[\x83\x81\x10\x15a\x07\xB9W\x81\x81\x01Q\x83\x82\x01R` \x01a\x07\xA1V[PP`\0\x91\x01RV[`\0\x82Qa\x07\xD4\x81\x84` \x87\x01a\x07\x9EV[\x91\x90\x91\x01\x92\x91PPV[`@\x81R`\0\x83Q\x80`@\x84\x01Ra\x07\xFD\x81``\x85\x01` \x88\x01a\x07\x9EV[` \x83\x01\x93\x90\x93RP`\x1F\x91\x90\x91\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x16\x01``\x01\x91\x90PV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`2`\x04R`$`\0\xFD\xFE\xA2dipfsX\"\x12 \x0C\x1C\xFA\xD6\xEFCwe\x9B\xFE\xA8\x8BVP\xBAm?\xB1y\x89C:k:\t \"S[\x9F\xCA\x1BdsolcC\0\x08\x17\x003";
/// The bytecode of the contract.
- pub static ECDSAOWNEDDKIMREGISTRY_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from_static(
- __BYTECODE,
- );
+ pub static ECDSAOWNEDDKIMREGISTRY_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\0\x88W`\x005`\xE0\x1C\x80c\xAE\xC7\x93a\x11a\0[W\x80c\xAE\xC7\x93a\x14a\x01YW\x80c\xD5\x07\xC3 \x14a\x01lW\x80c\xE7\xA7\x97z\x14a\x01\xA8W\x80c\xF6\xB4\x93D\x14a\x01\xCBW`\0\x80\xFD[\x80c\x07\xF1\xEA\xF5\x14a\0\x8DW\x80c#\x8A\xC93\x14a\0\xDFW\x80cd#\xF1\xE2\x14a\x01$W\x80c\x97\x17\x0F+\x14a\x01DW[`\0\x80\xFD[a\0\xC9`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x81V[`@Qa\0\xD6\x91\x90a\x12\xE3V[`@Q\x80\x91\x03\x90\xF3[`\x01Ta\0\xFF\x90s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81V[`@Qs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\0\xD6V[`\0Ta\0\xFF\x90s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81V[a\x01Wa\x01R6`\x04a\x13\xD9V[a\x01\xDEV[\0[a\0\xC9a\x01g6`\x04a\x14\x7FV[a\x06\x03V[a\0\xC9`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x81V[a\x01\xBBa\x01\xB66`\x04a\x15\x0FV[a\x06=V[`@Q\x90\x15\x15\x81R` \x01a\0\xD6V[a\x01Wa\x01\xD96`\x04a\x13\xD9V[a\x06\xE0V[\x83Q`\0\x03a\x02NW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[\x82Q`\0\x03a\x02\xB9W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x03 W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x03*\x83\x83a\x06=V[\x15a\x03\x91W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FpublicKeyHash is already set\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x04\0W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x04$\x91\x90a\x15TV[\x15a\x04\x8BW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is revoked\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0a\x04\xCE`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\x04\xDB\x82a\n\xC8V[\x90P`\0a\x04\xE9\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\x05pW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\xC1\\\xFF\xAB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xC1\\\xFF\xAB\x90a\x05\xC8\x90\x89\x90\x89\x90`\x04\x01a\x15vV[`\0`@Q\x80\x83\x03\x81`\0\x87\x80;\x15\x80\x15a\x05\xE2W`\0\x80\xFD[PZ\xF1\x15\x80\x15a\x05\xF6W=`\0\x80>=`\0\xFD[PPPPPPPPPPPV[``\x84\x84\x84a\x06\x11\x85a\x0B'V[`@Q` \x01a\x06$\x94\x93\x92\x91\x90a\x15\x98V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x94\x93PPPPV[`\0\x80T`@Q\x7F\xE7\xA7\x97z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xE7\xA7\x97z\x90a\x06\x96\x90\x86\x90\x86\x90`\x04\x01a\x15vV[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06\xB3W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\xD7\x91\x90a\x15TV[\x90P[\x92\x91PPV[\x83Q`\0\x03a\x07KW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x82Q`\0\x03a\x07\xB6W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x08\x1DW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x08'\x83\x83a\x06=V[\x15\x15`\x01\x14a\x08\x92W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is not set\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\t\x01W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\t%\x91\x90a\x15TV[\x15a\t\x8CW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FpublicKeyHash is already revoked`D\x82\x01R`d\x01a\x02EV[`\0a\t\xCF`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\t\xDC\x82a\n\xC8V[\x90P`\0a\t\xEA\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\nqW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\x15\xD2Q.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x87\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\x15\xD2Q.\x90`$\x01a\x05\xC8V[`\0a\n\xD4\x82Qa\x0B>V[\x82`@Q` \x01a\n\xE6\x92\x91\x90a\x16\x98V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[`\0\x80`\0a\x0B\x12\x85\x85a\x0B\xFCV[\x91P\x91Pa\x0B\x1F\x81a\x0CAV[P\x93\x92PPPV[``a\x06\xDA\x82a\x0B6\x84a\r\xF7V[`\x01\x01a\x0EaV[```\0a\x0BK\x83a\x10\xA4V[`\x01\x01\x90P`\0\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0BkWa\x0Bka\x12\xF6V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x0B\x95W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P\x81\x81\x01` \x01[\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x7F0123456789abcdef\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\n\x86\x06\x1A\x81S`\n\x85\x04\x94P\x84a\x0B\x9FWP\x93\x92PPPV[`\0\x80\x82Q`A\x03a\x0C2W` \x83\x01Q`@\x84\x01Q``\x85\x01Q`\0\x1Aa\x0C&\x87\x82\x85\x85a\x11\x86V[\x94P\x94PPPPa\x0C:V[P`\0\x90P`\x02[\x92P\x92\x90PV[`\0\x81`\x04\x81\x11\x15a\x0CUWa\x0CUa\x16\xF3V[\x03a\x0C]WPV[`\x01\x81`\x04\x81\x11\x15a\x0CqWa\x0Cqa\x16\xF3V[\x03a\x0C\xD8W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FECDSA: invalid signature\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\x02\x81`\x04\x81\x11\x15a\x0C\xECWa\x0C\xECa\x16\xF3V[\x03a\rSW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FECDSA: invalid signature length\0`D\x82\x01R`d\x01a\x02EV[`\x03\x81`\x04\x81\x11\x15a\rgWa\rga\x16\xF3V[\x03a\r\xF4W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FECDSA: invalid signature 's' val`D\x82\x01R\x7Fue\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`d\x82\x01R`\x84\x01a\x02EV[PV[`\0\x80`\x80\x83\x90\x1C\x15a\x0E\x0FW`\x80\x92\x90\x92\x1C\x91`\x10\x01[`@\x83\x90\x1C\x15a\x0E$W`@\x92\x90\x92\x1C\x91`\x08\x01[` \x83\x90\x1C\x15a\x0E9W` \x92\x90\x92\x1C\x91`\x04\x01[`\x10\x83\x90\x1C\x15a\x0ENW`\x10\x92\x90\x92\x1C\x91`\x02\x01[`\x08\x83\x90\x1C\x15a\x06\xDAW`\x01\x01\x92\x91PPV[```\0a\x0Ep\x83`\x02a\x17QV[a\x0E{\x90`\x02a\x17hV[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0E\x93Wa\x0E\x93a\x12\xF6V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x0E\xBDW` \x82\x01\x81\x806\x837\x01\x90P[P\x90P\x7F0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81`\0\x81Q\x81\x10a\x0E\xF4Wa\x0E\xF4a\x17{V[` \x01\x01\x90~\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x90\x81`\0\x1A\x90SP\x7Fx\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81`\x01\x81Q\x81\x10a\x0FWWa\x0FWa\x17{V[` \x01\x01\x90~\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x90\x81`\0\x1A\x90SP`\0a\x0F\x93\x84`\x02a\x17QV[a\x0F\x9E\x90`\x01a\x17hV[\x90P[`\x01\x81\x11\x15a\x10;W\x7F0123456789abcdef\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x85`\x0F\x16`\x10\x81\x10a\x0F\xDFWa\x0F\xDFa\x17{V[\x1A`\xF8\x1B\x82\x82\x81Q\x81\x10a\x0F\xF5Wa\x0F\xF5a\x17{V[` \x01\x01\x90~\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x90\x81`\0\x1A\x90SP`\x04\x94\x90\x94\x1C\x93a\x104\x81a\x17\xAAV[\x90Pa\x0F\xA1V[P\x83\x15a\x06\xD7W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FStrings: hex length insufficient`D\x82\x01R`d\x01a\x02EV[`\0\x80z\x18O\x03\xE9?\xF9\xF4\xDA\xA7\x97\xEDn8\xEDd\xBFj\x1F\x01\0\0\0\0\0\0\0\0\x83\x10a\x10\xEDWz\x18O\x03\xE9?\xF9\xF4\xDA\xA7\x97\xEDn8\xEDd\xBFj\x1F\x01\0\0\0\0\0\0\0\0\x83\x04\x92P`@\x01[m\x04\xEE-mA[\x85\xAC\xEF\x81\0\0\0\0\x83\x10a\x11\x19Wm\x04\xEE-mA[\x85\xAC\xEF\x81\0\0\0\0\x83\x04\x92P` \x01[f#\x86\xF2o\xC1\0\0\x83\x10a\x117Wf#\x86\xF2o\xC1\0\0\x83\x04\x92P`\x10\x01[c\x05\xF5\xE1\0\x83\x10a\x11OWc\x05\xF5\xE1\0\x83\x04\x92P`\x08\x01[a'\x10\x83\x10a\x11cWa'\x10\x83\x04\x92P`\x04\x01[`d\x83\x10a\x11uW`d\x83\x04\x92P`\x02\x01[`\n\x83\x10a\x06\xDAW`\x01\x01\x92\x91PPV[`\0\x80\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x83\x11\x15a\x11\xBDWP`\0\x90P`\x03a\x12lV[`@\x80Q`\0\x80\x82R` \x82\x01\x80\x84R\x89\x90R`\xFF\x88\x16\x92\x82\x01\x92\x90\x92R``\x81\x01\x86\x90R`\x80\x81\x01\x85\x90R`\x01\x90`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15a\x12\x11W=`\0\x80>=`\0\xFD[PP`@Q\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x01Q\x91PPs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x16a\x12eW`\0`\x01\x92P\x92PPa\x12lV[\x91P`\0\x90P[\x94P\x94\x92PPPV[`\0[\x83\x81\x10\x15a\x12\x90W\x81\x81\x01Q\x83\x82\x01R` \x01a\x12xV[PP`\0\x91\x01RV[`\0\x81Q\x80\x84Ra\x12\xB1\x81` \x86\x01` \x86\x01a\x12uV[`\x1F\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R`\0a\x06\xD7` \x83\x01\x84a\x12\x99V[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`A`\x04R`$`\0\xFD[`\0g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x84\x11\x15a\x13@Wa\x13@a\x12\xF6V[`@Q`\x1F\x85\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15a\x13\x86Wa\x13\x86a\x12\xF6V[\x81`@R\x80\x93P\x85\x81R\x86\x86\x86\x01\x11\x15a\x13\x9FW`\0\x80\xFD[\x85\x85` \x83\x017`\0` \x87\x83\x01\x01RPPP\x93\x92PPPV[`\0\x82`\x1F\x83\x01\x12a\x13\xCAW`\0\x80\xFD[a\x06\xD7\x83\x835` \x85\x01a\x13%V[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x13\xEFW`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x14\x07W`\0\x80\xFD[a\x14\x13\x88\x83\x89\x01a\x13\xB9V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x14)W`\0\x80\xFD[a\x145\x88\x83\x89\x01a\x13\xB9V[\x94P`@\x87\x015\x93P``\x87\x015\x91P\x80\x82\x11\x15a\x14RW`\0\x80\xFD[P\x85\x01`\x1F\x81\x01\x87\x13a\x14dW`\0\x80\xFD[a\x14s\x87\x825` \x84\x01a\x13%V[\x91PP\x92\x95\x91\x94P\x92PV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x14\x95W`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x14\xADW`\0\x80\xFD[a\x14\xB9\x88\x83\x89\x01a\x13\xB9V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x14\xCFW`\0\x80\xFD[a\x14\xDB\x88\x83\x89\x01a\x13\xB9V[\x94P`@\x87\x015\x91P\x80\x82\x11\x15a\x14\xF1W`\0\x80\xFD[Pa\x14\xFE\x87\x82\x88\x01a\x13\xB9V[\x94\x97\x93\x96P\x93\x94``\x015\x93PPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x15\"W`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x159W`\0\x80\xFD[a\x15E\x85\x82\x86\x01a\x13\xB9V[\x95` \x94\x90\x94\x015\x94PPPPV[`\0` \x82\x84\x03\x12\x15a\x15fW`\0\x80\xFD[\x81Q\x80\x15\x15\x81\x14a\x06\xD7W`\0\x80\xFD[`@\x81R`\0a\x15\x89`@\x83\x01\x85a\x12\x99V[\x90P\x82` \x83\x01R\x93\x92PPPV[`\0\x85Qa\x15\xAA\x81\x84` \x8A\x01a\x12uV[\x7Fselector=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x90\x83\x01\x90\x81R\x85Qa\x15\xE4\x81`\t\x84\x01` \x8A\x01a\x12uV[\x7F;domain=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\t\x92\x90\x91\x01\x91\x82\x01R\x84Qa\x16\"\x81`\x11\x84\x01` \x89\x01a\x12uV[\x7F;public_key_hash=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\x11\x92\x90\x91\x01\x91\x82\x01R\x83Qa\x16`\x81`\"\x84\x01` \x88\x01a\x12uV[\x7F;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\"\x92\x90\x91\x01\x91\x82\x01R`#\x01\x96\x95PPPPPPV[\x7F\x19Ethereum Signed Message:\n\0\0\0\0\0\0\x81R`\0\x83Qa\x16\xD0\x81`\x1A\x85\x01` \x88\x01a\x12uV[\x83Q\x90\x83\x01\x90a\x16\xE7\x81`\x1A\x84\x01` \x88\x01a\x12uV[\x01`\x1A\x01\x94\x93PPPPV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`!`\x04R`$`\0\xFD[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`\x11`\x04R`$`\0\xFD[\x80\x82\x02\x81\x15\x82\x82\x04\x84\x14\x17a\x06\xDAWa\x06\xDAa\x17\"V[\x80\x82\x01\x80\x82\x11\x15a\x06\xDAWa\x06\xDAa\x17\"V[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`2`\x04R`$`\0\xFD[`\0\x81a\x17\xB9Wa\x17\xB9a\x17\"V[P\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x90V\xFE\xA2dipfsX\"\x12 \x8C\xC9=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x04$\x91\x90a\x14\xA2V[\x15a\x04\x8BW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is revoked\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0a\x04\xCE`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01\x7FSET:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\x04\xDB\x82a\n\xC8V[\x90P`\0a\x04\xE9\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\x05pW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\xC1\\\xFF\xAB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xC1\\\xFF\xAB\x90a\x05\xC8\x90\x89\x90\x89\x90`\x04\x01a\x14\xCBV[`\0`@Q\x80\x83\x03\x81`\0\x87\x80;\x15\x80\x15a\x05\xE2W`\0\x80\xFD[PZ\xF1\x15\x80\x15a\x05\xF6W=`\0\x80>=`\0\xFD[PPPPPPPPPPPV[``\x84\x84\x84a\x06\x11\x85a\x0B-V[`@Q` \x01a\x06$\x94\x93\x92\x91\x90a\x14\xEDV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x94\x93PPPPV[`\0\x80T`@Q\x7F\xE7\xA7\x97z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\xE7\xA7\x97z\x90a\x06\x96\x90\x86\x90\x86\x90`\x04\x01a\x14\xCBV[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06\xB3W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\xD7\x91\x90a\x14\xA2V[\x90P[\x92\x91PPV[\x83Q`\0\x03a\x07KW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x10`$\x82\x01R\x7FInvalid selector\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x82Q`\0\x03a\x07\xB6W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x13`$\x82\x01R\x7FInvalid domain name\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[\x81a\x08\x1DW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FInvalid public key hash\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[a\x08'\x83\x83a\x06=V[\x15\x15`\x01\x14a\x08\x92W`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FpublicKeyHash is not set\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7FB\xD7\xCB\x98\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x84\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90cB\xD7\xCB\x98\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\t\x01W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\t%\x91\x90a\x14\xA2V[\x15a\t\x8CW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FpublicKeyHash is already revoked`D\x82\x01R`d\x01a\x02EV[`\0a\t\xCF`@Q\x80`@\x01`@R\x80`\x07\x81R` \x01\x7FREVOKE:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81RP\x86\x86\x86a\x06\x03V[\x90P`\0a\t\xDC\x82a\n\xC8V[\x90P`\0a\t\xEA\x82\x85a\x0B\x03V[`\x01T\x90\x91Ps\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x83\x16\x91\x16\x14a\nqW`@Q\x7F\x08\xC3y\xA0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R` `\x04\x82\x01R`\x11`$\x82\x01R\x7FInvalid signature\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x02EV[`\0T`@Q\x7F\x15\xD2Q.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81R`\x04\x81\x01\x87\x90Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x91\x16\x90c\x15\xD2Q.\x90`$\x01a\x05\xC8V[`\0a\n\xD4\x82Qa\x0BDV[\x82`@Q` \x01a\n\xE6\x92\x91\x90a\x15\xEDV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[`\0\x80`\0\x80a\x0B\x13\x86\x86a\x0C\x02V[\x92P\x92P\x92Pa\x0B#\x82\x82a\x0COV[P\x90\x94\x93PPPPV[``a\x06\xDA\x82a\x0B<\x84a\rWV[`\x01\x01a\r\xC1V[```\0a\x0BQ\x83a\x0F\xE7V[`\x01\x01\x90P`\0\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0BqWa\x0Bqa\x12DV[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x0B\x9BW` \x82\x01\x81\x806\x837\x01\x90P[P\x90P\x81\x81\x01` \x01[\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x7F0123456789abcdef\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\n\x86\x06\x1A\x81S`\n\x85\x04\x94P\x84a\x0B\xA5WP\x93\x92PPPV[`\0\x80`\0\x83Q`A\x03a\x0C=`\0\xFD[PP`@Q\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x01Q\x91PPs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x16a\x11\xAFWP`\0\x92P`\x01\x91P\x82\x90Pa\x11\xB9V[\x92P`\0\x91P\x81\x90P[\x94P\x94P\x94\x91PPV[`\0[\x83\x81\x10\x15a\x11\xDEW\x81\x81\x01Q\x83\x82\x01R` \x01a\x11\xC6V[PP`\0\x91\x01RV[`\0\x81Q\x80\x84Ra\x11\xFF\x81` \x86\x01` \x86\x01a\x11\xC3V[`\x1F\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R`\0a\x06\xD7` \x83\x01\x84a\x11\xE7V[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`A`\x04R`$`\0\xFD[`\0g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x84\x11\x15a\x12\x8EWa\x12\x8Ea\x12DV[`@Q`\x1F\x85\x01\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15a\x12\xD4Wa\x12\xD4a\x12DV[\x81`@R\x80\x93P\x85\x81R\x86\x86\x86\x01\x11\x15a\x12\xEDW`\0\x80\xFD[\x85\x85` \x83\x017`\0` \x87\x83\x01\x01RPPP\x93\x92PPPV[`\0\x82`\x1F\x83\x01\x12a\x13\x18W`\0\x80\xFD[a\x06\xD7\x83\x835` \x85\x01a\x12sV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x13=W`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x13UW`\0\x80\xFD[a\x13a\x88\x83\x89\x01a\x13\x07V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x13wW`\0\x80\xFD[a\x13\x83\x88\x83\x89\x01a\x13\x07V[\x94P`@\x87\x015\x93P``\x87\x015\x91P\x80\x82\x11\x15a\x13\xA0W`\0\x80\xFD[P\x85\x01`\x1F\x81\x01\x87\x13a\x13\xB2W`\0\x80\xFD[a\x13\xC1\x87\x825` \x84\x01a\x12sV[\x91PP\x92\x95\x91\x94P\x92PV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x13\xE3W`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x13\xFBW`\0\x80\xFD[a\x14\x07\x88\x83\x89\x01a\x13\x07V[\x95P` \x87\x015\x91P\x80\x82\x11\x15a\x14\x1DW`\0\x80\xFD[a\x14)\x88\x83\x89\x01a\x13\x07V[\x94P`@\x87\x015\x91P\x80\x82\x11\x15a\x14?W`\0\x80\xFD[Pa\x14L\x87\x82\x88\x01a\x13\x07V[\x94\x97\x93\x96P\x93\x94``\x015\x93PPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x14pW`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x14\x87W`\0\x80\xFD[a\x14\x93\x85\x82\x86\x01a\x13\x07V[\x95` \x94\x90\x94\x015\x94PPPPV[`\0` \x82\x84\x03\x12\x15a\x14\xB4W`\0\x80\xFD[\x81Q\x80\x15\x15\x81\x14a\x14\xC4W`\0\x80\xFD[\x93\x92PPPV[`@\x81R`\0a\x14\xDE`@\x83\x01\x85a\x11\xE7V[\x90P\x82` \x83\x01R\x93\x92PPPV[`\0\x85Qa\x14\xFF\x81\x84` \x8A\x01a\x11\xC3V[\x7Fselector=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x90\x83\x01\x90\x81R\x85Qa\x159\x81`\t\x84\x01` \x8A\x01a\x11\xC3V[\x7F;domain=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\t\x92\x90\x91\x01\x91\x82\x01R\x84Qa\x15w\x81`\x11\x84\x01` \x89\x01a\x11\xC3V[\x7F;public_key_hash=\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\x11\x92\x90\x91\x01\x91\x82\x01R\x83Qa\x15\xB5\x81`\"\x84\x01` \x88\x01a\x11\xC3V[\x7F;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\"\x92\x90\x91\x01\x91\x82\x01R`#\x01\x96\x95PPPPPPV[\x7F\x19Ethereum Signed Message:\n\0\0\0\0\0\0\x81R`\0\x83Qa\x16%\x81`\x1A\x85\x01` \x88\x01a\x11\xC3V[\x83Q\x90\x83\x01\x90a\x16<\x81`\x1A\x84\x01` \x88\x01a\x11\xC3V[\x01`\x1A\x01\x94\x93PPPPV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`!`\x04R`$`\0\xFD[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`\x11`\x04R`$`\0\xFD[\x80\x82\x02\x81\x15\x82\x82\x04\x84\x14\x17a\x06\xDAWa\x06\xDAa\x16wV[\x80\x82\x01\x80\x82\x11\x15a\x06\xDAWa\x06\xDAa\x16wV[\x7FNH{q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0R`2`\x04R`$`\0\xFD[`\0\x81a\x17\x0EWa\x17\x0Ea\x16wV[P\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x01\x90V\xFE\xA2dipfsX\"\x12 d\xE7I\x84:X\x98\xC3\xE6\xA0\xDE\x83\x93\xF1\xF0\xA3e\xD5@U@?\xAC\xD6\x1CQ\x89\xBA\x96\xF6\x07mdsolcC\0\x08\x17\x003";
/// The deployed bytecode of the contract.
- pub static ECDSAOWNEDDKIMREGISTRY_DEPLOYED_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from_static(
- __DEPLOYED_BYTECODE,
- );
+ pub static ECDSAOWNEDDKIMREGISTRY_DEPLOYED_BYTECODE: ::ethers::core::types::Bytes =
+ ::ethers::core::types::Bytes::from_static(__DEPLOYED_BYTECODE);
pub struct ECDSAOwnedDKIMRegistry(::ethers::contract::Contract);
impl ::core::clone::Clone for ECDSAOwnedDKIMRegistry {
fn clone(&self) -> Self {
@@ -339,13 +348,11 @@ pub mod ecdsa_owned_dkim_registry {
address: T,
client: ::std::sync::Arc,
) -> Self {
- Self(
- ::ethers::contract::Contract::new(
- address.into(),
- ECDSAOWNEDDKIMREGISTRY_ABI.clone(),
- client,
- ),
- )
+ Self(::ethers::contract::Contract::new(
+ address.into(),
+ ECDSAOWNEDDKIMREGISTRY_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
@@ -420,10 +427,7 @@ pub mod ecdsa_owned_dkim_registry {
///Calls the contract's `dkimRegistry` (0x6423f1e2) function
pub fn dkim_registry(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([100, 35, 241, 226], ())
.expect("method not found (this should never happen)")
@@ -471,21 +475,218 @@ pub mod ecdsa_owned_dkim_registry {
///Calls the contract's `signer` (0x238ac933) function
pub fn signer(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([35, 138, 201, 51], ())
.expect("method not found (this should never happen)")
}
}
impl From<::ethers::contract::Contract>
- for ECDSAOwnedDKIMRegistry {
+ for ECDSAOwnedDKIMRegistry
+ {
fn from(contract: ::ethers::contract::Contract) -> Self {
Self::new(contract.address(), contract.client())
}
}
+ ///Custom Error type `ECDSAInvalidSignature` with signature `ECDSAInvalidSignature()` and selector `0xf645eedf`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(name = "ECDSAInvalidSignature", abi = "ECDSAInvalidSignature()")]
+ pub struct ECDSAInvalidSignature;
+ ///Custom Error type `ECDSAInvalidSignatureLength` with signature `ECDSAInvalidSignatureLength(uint256)` and selector `0xfce698f7`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(
+ name = "ECDSAInvalidSignatureLength",
+ abi = "ECDSAInvalidSignatureLength(uint256)"
+ )]
+ pub struct ECDSAInvalidSignatureLength {
+ pub length: ::ethers::core::types::U256,
+ }
+ ///Custom Error type `ECDSAInvalidSignatureS` with signature `ECDSAInvalidSignatureS(bytes32)` and selector `0xd78bce0c`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(
+ name = "ECDSAInvalidSignatureS",
+ abi = "ECDSAInvalidSignatureS(bytes32)"
+ )]
+ pub struct ECDSAInvalidSignatureS {
+ pub s: [u8; 32],
+ }
+ ///Custom Error type `StringsInsufficientHexLength` with signature `StringsInsufficientHexLength(uint256,uint256)` and selector `0xe22e27eb`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(
+ name = "StringsInsufficientHexLength",
+ abi = "StringsInsufficientHexLength(uint256,uint256)"
+ )]
+ pub struct StringsInsufficientHexLength {
+ pub value: ::ethers::core::types::U256,
+ pub length: ::ethers::core::types::U256,
+ }
+ ///Container type for all of the contract's custom errors
+ #[derive(Clone, ::ethers::contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
+ pub enum ECDSAOwnedDKIMRegistryErrors {
+ ECDSAInvalidSignature(ECDSAInvalidSignature),
+ ECDSAInvalidSignatureLength(ECDSAInvalidSignatureLength),
+ ECDSAInvalidSignatureS(ECDSAInvalidSignatureS),
+ StringsInsufficientHexLength(StringsInsufficientHexLength),
+ /// The standard solidity revert string, with selector
+ /// Error(string) -- 0x08c379a0
+ RevertString(::std::string::String),
+ }
+ impl ::ethers::core::abi::AbiDecode for ECDSAOwnedDKIMRegistryErrors {
+ fn decode(
+ data: impl AsRef<[u8]>,
+ ) -> ::core::result::Result {
+ let data = data.as_ref();
+ if let Ok(decoded) =
+ <::std::string::String as ::ethers::core::abi::AbiDecode>::decode(data)
+ {
+ return Ok(Self::RevertString(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::ECDSAInvalidSignature(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::ECDSAInvalidSignatureLength(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::ECDSAInvalidSignatureS(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::StringsInsufficientHexLength(decoded));
+ }
+ Err(::ethers::core::abi::Error::InvalidData.into())
+ }
+ }
+ impl ::ethers::core::abi::AbiEncode for ECDSAOwnedDKIMRegistryErrors {
+ fn encode(self) -> ::std::vec::Vec {
+ match self {
+ Self::ECDSAInvalidSignature(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::ECDSAInvalidSignatureLength(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::ECDSAInvalidSignatureS(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::StringsInsufficientHexLength(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::RevertString(s) => ::ethers::core::abi::AbiEncode::encode(s),
+ }
+ }
+ }
+ impl ::ethers::contract::ContractRevert for ECDSAOwnedDKIMRegistryErrors {
+ fn valid_selector(selector: [u8; 4]) -> bool {
+ match selector {
+ [0x08, 0xc3, 0x79, 0xa0] => true,
+ _ if selector
+ == ::selector() =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector(
+ ) =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector() =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector(
+ ) =>
+ {
+ true
+ }
+ _ => false,
+ }
+ }
+ }
+ impl ::core::fmt::Display for ECDSAOwnedDKIMRegistryErrors {
+ fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
+ match self {
+ Self::ECDSAInvalidSignature(element) => ::core::fmt::Display::fmt(element, f),
+ Self::ECDSAInvalidSignatureLength(element) => ::core::fmt::Display::fmt(element, f),
+ Self::ECDSAInvalidSignatureS(element) => ::core::fmt::Display::fmt(element, f),
+ Self::StringsInsufficientHexLength(element) => {
+ ::core::fmt::Display::fmt(element, f)
+ }
+ Self::RevertString(s) => ::core::fmt::Display::fmt(s, f),
+ }
+ }
+ }
+ impl ::core::convert::From<::std::string::String> for ECDSAOwnedDKIMRegistryErrors {
+ fn from(value: String) -> Self {
+ Self::RevertString(value)
+ }
+ }
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryErrors {
+ fn from(value: ECDSAInvalidSignature) -> Self {
+ Self::ECDSAInvalidSignature(value)
+ }
+ }
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryErrors {
+ fn from(value: ECDSAInvalidSignatureLength) -> Self {
+ Self::ECDSAInvalidSignatureLength(value)
+ }
+ }
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryErrors {
+ fn from(value: ECDSAInvalidSignatureS) -> Self {
+ Self::ECDSAInvalidSignatureS(value)
+ }
+ }
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryErrors {
+ fn from(value: StringsInsufficientHexLength) -> Self {
+ Self::StringsInsufficientHexLength(value)
+ }
+ }
///Container type for all input parameters for the `REVOKE_PREFIX` function with signature `REVOKE_PREFIX()` and selector `0xd507c320`
#[derive(
Clone,
@@ -495,7 +696,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "REVOKE_PREFIX", abi = "REVOKE_PREFIX()")]
pub struct RevokePrefixCall;
@@ -508,7 +709,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "SET_PREFIX", abi = "SET_PREFIX()")]
pub struct SetPrefixCall;
@@ -521,7 +722,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "computeSignedMsg",
@@ -542,7 +743,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "dkimRegistry", abi = "dkimRegistry()")]
pub struct DkimRegistryCall;
@@ -555,7 +756,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "isDKIMPublicKeyHashValid",
@@ -574,7 +775,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "revokeDKIMPublicKeyHash",
@@ -595,7 +796,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "setDKIMPublicKeyHash",
@@ -616,7 +817,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "signer", abi = "signer()")]
pub struct SignerCall;
@@ -637,44 +838,38 @@ pub mod ecdsa_owned_dkim_registry {
data: impl AsRef<[u8]>,
) -> ::core::result::Result {
let data = data.as_ref();
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data)
+ {
return Ok(Self::RevokePrefix(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::SetPrefix(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::ComputeSignedMsg(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data)
+ {
return Ok(Self::DkimRegistry(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::IsDKIMPublicKeyHashValid(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::RevokeDKIMPublicKeyHash(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::SetDKIMPublicKeyHash(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::Signer(decoded));
}
Err(::ethers::core::abi::Error::InvalidData.into())
@@ -683,18 +878,10 @@ pub mod ecdsa_owned_dkim_registry {
impl ::ethers::core::abi::AbiEncode for ECDSAOwnedDKIMRegistryCalls {
fn encode(self) -> Vec {
match self {
- Self::RevokePrefix(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::SetPrefix(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::ComputeSignedMsg(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::DkimRegistry(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::RevokePrefix(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::SetPrefix(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::ComputeSignedMsg(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::DkimRegistry(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::IsDKIMPublicKeyHashValid(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
@@ -715,15 +902,9 @@ pub mod ecdsa_owned_dkim_registry {
Self::SetPrefix(element) => ::core::fmt::Display::fmt(element, f),
Self::ComputeSignedMsg(element) => ::core::fmt::Display::fmt(element, f),
Self::DkimRegistry(element) => ::core::fmt::Display::fmt(element, f),
- Self::IsDKIMPublicKeyHashValid(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
- Self::RevokeDKIMPublicKeyHash(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
- Self::SetDKIMPublicKeyHash(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::IsDKIMPublicKeyHashValid(element) => ::core::fmt::Display::fmt(element, f),
+ Self::RevokeDKIMPublicKeyHash(element) => ::core::fmt::Display::fmt(element, f),
+ Self::SetDKIMPublicKeyHash(element) => ::core::fmt::Display::fmt(element, f),
Self::Signer(element) => ::core::fmt::Display::fmt(element, f),
}
}
@@ -748,20 +929,17 @@ pub mod ecdsa_owned_dkim_registry {
Self::DkimRegistry(value)
}
}
- impl ::core::convert::From
- for ECDSAOwnedDKIMRegistryCalls {
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryCalls {
fn from(value: IsDKIMPublicKeyHashValidCall) -> Self {
Self::IsDKIMPublicKeyHashValid(value)
}
}
- impl ::core::convert::From
- for ECDSAOwnedDKIMRegistryCalls {
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryCalls {
fn from(value: RevokeDKIMPublicKeyHashCall) -> Self {
Self::RevokeDKIMPublicKeyHash(value)
}
}
- impl ::core::convert::From
- for ECDSAOwnedDKIMRegistryCalls {
+ impl ::core::convert::From for ECDSAOwnedDKIMRegistryCalls {
fn from(value: SetDKIMPublicKeyHashCall) -> Self {
Self::SetDKIMPublicKeyHash(value)
}
@@ -780,7 +958,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct RevokePrefixReturn(pub ::std::string::String);
///Container type for all return fields from the `SET_PREFIX` function with signature `SET_PREFIX()` and selector `0x07f1eaf5`
@@ -792,7 +970,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct SetPrefixReturn(pub ::std::string::String);
///Container type for all return fields from the `computeSignedMsg` function with signature `computeSignedMsg(string,string,string,bytes32)` and selector `0xaec79361`
@@ -804,7 +982,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct ComputeSignedMsgReturn(pub ::std::string::String);
///Container type for all return fields from the `dkimRegistry` function with signature `dkimRegistry()` and selector `0x6423f1e2`
@@ -816,7 +994,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct DkimRegistryReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `isDKIMPublicKeyHashValid` function with signature `isDKIMPublicKeyHashValid(string,bytes32)` and selector `0xe7a7977a`
@@ -828,7 +1006,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct IsDKIMPublicKeyHashValidReturn(pub bool);
///Container type for all return fields from the `signer` function with signature `signer()` and selector `0x238ac933`
@@ -840,7 +1018,7 @@ pub mod ecdsa_owned_dkim_registry {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct SignerReturn(pub ::ethers::core::types::Address);
}
diff --git a/packages/relayer/src/abis/email_auth.rs b/packages/relayer/src/abis/email_auth.rs
index 754a5339..86236b93 100644
--- a/packages/relayer/src/abis/email_auth.rs
+++ b/packages/relayer/src/abis/email_auth.rs
@@ -7,7 +7,7 @@ pub use email_auth::*;
clippy::upper_case_acronyms,
clippy::type_complexity,
dead_code,
- non_camel_case_types,
+ non_camel_case_types
)]
pub mod email_auth {
#[allow(deprecated)]
@@ -17,842 +17,740 @@ pub mod email_auth {
inputs: ::std::vec![],
}),
functions: ::core::convert::From::from([
+ (
+ ::std::borrow::ToOwned::to_owned("UPGRADE_INTERFACE_VERSION"),
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("UPGRADE_INTERFACE_VERSION",),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::String,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("string"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
+ ),
(
::std::borrow::ToOwned::to_owned("accountSalt"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("accountSalt"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("accountSalt"),
+ 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("authEmail"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("authEmail"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("emailAuthMsg"),
- kind: ::ethers::core::abi::ethabi::ParamType::Tuple(
- ::std::vec![
- ::ethers::core::abi::ethabi::ParamType::Uint(256usize),
- ::ethers::core::abi::ethabi::ParamType::Array(
- ::std::boxed::Box::new(
- ::ethers::core::abi::ethabi::ParamType::Bytes,
- ),
- ),
- ::ethers::core::abi::ethabi::ParamType::Uint(256usize),
- ::ethers::core::abi::ethabi::ParamType::Tuple(
- ::std::vec![
- ::ethers::core::abi::ethabi::ParamType::String,
- ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
- ::ethers::core::abi::ethabi::ParamType::Uint(256usize),
- ::ethers::core::abi::ethabi::ParamType::String,
- ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
- ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
- ::ethers::core::abi::ethabi::ParamType::Bool,
- ::ethers::core::abi::ethabi::ParamType::Bytes,
- ],
- ),
- ],
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("struct EmailAuthMsg"),
- ),
- },
- ],
- 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::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("authEmail"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("emailAuthMsg"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Tuple(::std::vec![
+ ::ethers::core::abi::ethabi::ParamType::Uint(256usize),
+ ::ethers::core::abi::ethabi::ParamType::Array(
+ ::std::boxed::Box::new(
+ ::ethers::core::abi::ethabi::ParamType::Bytes,
+ ),
+ ),
+ ::ethers::core::abi::ethabi::ParamType::Uint(256usize),
+ ::ethers::core::abi::ethabi::ParamType::Tuple(::std::vec![
+ ::ethers::core::abi::ethabi::ParamType::String,
+ ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
+ ::ethers::core::abi::ethabi::ParamType::Uint(256usize),
+ ::ethers::core::abi::ethabi::ParamType::String,
+ ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
+ ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize),
+ ::ethers::core::abi::ethabi::ParamType::Bool,
+ ::ethers::core::abi::ethabi::ParamType::Bytes,
+ ],),
+ ],),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("struct EmailAuthMsg"),
+ ),
+ },],
+ 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::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("authedHash"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("authedHash"),
- inputs: ::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"),
- ),
- },
- ],
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("authedHash"),
+ inputs: ::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"),
+ ),
+ },],
+ 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("computeMsgHash"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("computeMsgHash"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_accountSalt"),
- 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("_isCodeExist"),
- kind: ::ethers::core::abi::ethabi::ParamType::Bool,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bool"),
- ),
- },
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_templateId"),
- kind: ::ethers::core::abi::ethabi::ParamType::Uint(
- 256usize,
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("uint256"),
- ),
- },
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_subjectParams"),
- kind: ::ethers::core::abi::ethabi::ParamType::Array(
- ::std::boxed::Box::new(
- ::ethers::core::abi::ethabi::ParamType::Bytes,
- ),
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes[]"),
- ),
- },
- ],
- 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::Pure,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("computeMsgHash"),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_accountSalt"),
+ 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("_isCodeExist"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Bool,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bool"),
+ ),
+ },
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_templateId"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
+ ),
+ },
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_subjectParams"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Array(
+ ::std::boxed::Box::new(
+ ::ethers::core::abi::ethabi::ParamType::Bytes,
+ ),
+ ),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes[]"),
+ ),
+ },
+ ],
+ 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::Pure,
+ },],
),
(
::std::borrow::ToOwned::to_owned("deleteSubjectTemplate"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "deleteSubjectTemplate",
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("deleteSubjectTemplate",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_templateId"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_templateId"),
- 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,
- },
- ],
+ },],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("dkim"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("dkim"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned(
- "contract ECDSAOwnedDKIMRegistry",
- ),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("dkim"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("contract ECDSAOwnedDKIMRegistry",),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("dkimRegistryAddr"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("dkimRegistryAddr"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("address"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("dkimRegistryAddr"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("getSubjectTemplate"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("getSubjectTemplate"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_templateId"),
- 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::Array(
- ::std::boxed::Box::new(
- ::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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("getSubjectTemplate"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_templateId"),
+ 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::Array(
+ ::std::boxed::Box::new(
+ ::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("initialize"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("initialize"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_accountSalt"),
- kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
- 32usize,
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes32"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("initialize"),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_initialOwner"),
+ 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("_accountSalt"),
+ kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes32"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("insertSubjectTemplate"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "insertSubjectTemplate",
- ),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_templateId"),
- kind: ::ethers::core::abi::ethabi::ParamType::Uint(
- 256usize,
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("uint256"),
- ),
- },
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_subjectTemplate"),
- kind: ::ethers::core::abi::ethabi::ParamType::Array(
- ::std::boxed::Box::new(
- ::ethers::core::abi::ethabi::ParamType::String,
- ),
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("string[]"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("insertSubjectTemplate",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_templateId"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
+ ),
+ },
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_subjectTemplate"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Array(
+ ::std::boxed::Box::new(
+ ::ethers::core::abi::ethabi::ParamType::String,
+ ),
+ ),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("string[]"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("isValidSignature"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("isValidSignature"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_hash"),
- 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("_signature"),
- kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes"),
- ),
- },
- ],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
- 4usize,
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes4"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("isValidSignature"),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_hash"),
+ 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("_signature"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(4usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes4"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("lastTimestamp"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("lastTimestamp"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("lastTimestamp"),
+ 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("owner"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("owner"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("address"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("owner"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("proxiableUUID"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("proxiableUUID"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("proxiableUUID"),
+ 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("renounceOwnership"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("renounceOwnership"),
- inputs: ::std::vec![],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("renounceOwnership"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("setTimestampCheckEnabled"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "setTimestampCheckEnabled",
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("setTimestampCheckEnabled",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_enabled"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Bool,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bool"),
),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_enabled"),
- kind: ::ethers::core::abi::ethabi::ParamType::Bool,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bool"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ },],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("subjectTemplates"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("subjectTemplates"),
- inputs: ::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"),
- ),
- },
- ::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"),
- ),
- },
- ],
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("subjectTemplates"),
+ inputs: ::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"),
+ ),
+ },
+ ::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"),
+ ),
+ },
+ ],
+ 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("timestampCheckEnabled"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "timestampCheckEnabled",
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("timestampCheckEnabled",),
+ 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"),
),
- 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,
- },
- ],
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("transferOwnership"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("transferOwnership"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("newOwner"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("transferOwnership"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("newOwner"),
+ 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("updateDKIMRegistry"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("updateDKIMRegistry"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_dkimRegistryAddr"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("updateDKIMRegistry"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_dkimRegistryAddr"),
+ 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("updateSubjectTemplate"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned(
- "updateSubjectTemplate",
- ),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_templateId"),
- kind: ::ethers::core::abi::ethabi::ParamType::Uint(
- 256usize,
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("uint256"),
- ),
- },
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_subjectTemplate"),
- kind: ::ethers::core::abi::ethabi::ParamType::Array(
- ::std::boxed::Box::new(
- ::ethers::core::abi::ethabi::ParamType::String,
- ),
- ),
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("string[]"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("updateSubjectTemplate",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_templateId"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(256usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("uint256"),
+ ),
+ },
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_subjectTemplate"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Array(
+ ::std::boxed::Box::new(
+ ::ethers::core::abi::ethabi::ParamType::String,
+ ),
+ ),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("string[]"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("updateVerifier"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("updateVerifier"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("_verifierAddr"),
- 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("upgradeTo"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("upgradeTo"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("newImplementation"),
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("updateVerifier"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("_verifierAddr"),
+ 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("upgradeToAndCall"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("upgradeToAndCall"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::borrow::ToOwned::to_owned("newImplementation"),
- 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("data"),
- kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("bytes"),
- ),
- },
- ],
- outputs: ::std::vec![],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::Payable,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("upgradeToAndCall"),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("newImplementation"),
+ 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("data"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Bytes,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes"),
+ ),
+ },
+ ],
+ outputs: ::std::vec![],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::Payable,
+ },],
),
(
::std::borrow::ToOwned::to_owned("usedNullifiers"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("usedNullifiers"),
- inputs: ::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"),
- ),
- },
- ],
- 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::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("usedNullifiers"),
+ inputs: ::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"),
+ ),
+ },],
+ 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("verifier"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("verifier"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("contract Verifier"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("verifier"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("contract Verifier"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
(
::std::borrow::ToOwned::to_owned("verifierAddr"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Function {
- name: ::std::borrow::ToOwned::to_owned("verifierAddr"),
- inputs: ::std::vec![],
- outputs: ::std::vec![
- ::ethers::core::abi::ethabi::Param {
- name: ::std::string::String::new(),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- internal_type: ::core::option::Option::Some(
- ::std::borrow::ToOwned::to_owned("address"),
- ),
- },
- ],
- constant: ::core::option::Option::None,
- state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
- },
- ],
+ ::std::vec![::ethers::core::abi::ethabi::Function {
+ name: ::std::borrow::ToOwned::to_owned("verifierAddr"),
+ inputs: ::std::vec![],
+ outputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::string::String::new(),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
+ ),
+ },],
+ constant: ::core::option::Option::None,
+ state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
+ },],
),
]),
events: ::core::convert::From::from([
(
- ::std::borrow::ToOwned::to_owned("AdminChanged"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Event {
- name: ::std::borrow::ToOwned::to_owned("AdminChanged"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("previousAdmin"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- indexed: false,
- },
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("newAdmin"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- indexed: false,
- },
- ],
- anonymous: false,
- },
- ],
+ ::std::borrow::ToOwned::to_owned("Initialized"),
+ ::std::vec![::ethers::core::abi::ethabi::Event {
+ name: ::std::borrow::ToOwned::to_owned("Initialized"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::EventParam {
+ name: ::std::borrow::ToOwned::to_owned("version"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Uint(64usize),
+ indexed: false,
+ },],
+ anonymous: false,
+ },],
),
(
- ::std::borrow::ToOwned::to_owned("BeaconUpgraded"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Event {
- name: ::std::borrow::ToOwned::to_owned("BeaconUpgraded"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("beacon"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- indexed: true,
- },
- ],
- anonymous: false,
- },
- ],
+ ::std::borrow::ToOwned::to_owned("OwnershipTransferred"),
+ ::std::vec![::ethers::core::abi::ethabi::Event {
+ name: ::std::borrow::ToOwned::to_owned("OwnershipTransferred",),
+ inputs: ::std::vec![
+ ::ethers::core::abi::ethabi::EventParam {
+ name: ::std::borrow::ToOwned::to_owned("previousOwner"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ indexed: true,
+ },
+ ::ethers::core::abi::ethabi::EventParam {
+ name: ::std::borrow::ToOwned::to_owned("newOwner"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ indexed: true,
+ },
+ ],
+ anonymous: false,
+ },],
),
(
- ::std::borrow::ToOwned::to_owned("Initialized"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Event {
- name: ::std::borrow::ToOwned::to_owned("Initialized"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("version"),
- kind: ::ethers::core::abi::ethabi::ParamType::Uint(8usize),
- indexed: false,
- },
- ],
- anonymous: false,
- },
- ],
+ ::std::borrow::ToOwned::to_owned("Upgraded"),
+ ::std::vec![::ethers::core::abi::ethabi::Event {
+ name: ::std::borrow::ToOwned::to_owned("Upgraded"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::EventParam {
+ name: ::std::borrow::ToOwned::to_owned("implementation"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ indexed: true,
+ },],
+ anonymous: false,
+ },],
),
+ ]),
+ errors: ::core::convert::From::from([
(
- ::std::borrow::ToOwned::to_owned("OwnershipTransferred"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Event {
- name: ::std::borrow::ToOwned::to_owned(
- "OwnershipTransferred",
+ ::std::borrow::ToOwned::to_owned("AddressEmptyCode"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("AddressEmptyCode"),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("target"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("previousOwner"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- indexed: true,
- },
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("newOwner"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- indexed: true,
- },
- ],
- anonymous: false,
- },
- ],
+ },],
+ },],
),
(
- ::std::borrow::ToOwned::to_owned("Upgraded"),
- ::std::vec![
- ::ethers::core::abi::ethabi::Event {
- name: ::std::borrow::ToOwned::to_owned("Upgraded"),
- inputs: ::std::vec![
- ::ethers::core::abi::ethabi::EventParam {
- name: ::std::borrow::ToOwned::to_owned("implementation"),
- kind: ::ethers::core::abi::ethabi::ParamType::Address,
- indexed: true,
- },
- ],
- anonymous: false,
- },
- ],
+ ::std::borrow::ToOwned::to_owned("ERC1967InvalidImplementation"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("ERC1967InvalidImplementation",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("implementation"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
+ ),
+ },],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("ERC1967NonPayable"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("ERC1967NonPayable"),
+ inputs: ::std::vec![],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("FailedInnerCall"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("FailedInnerCall"),
+ inputs: ::std::vec![],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("InvalidInitialization"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("InvalidInitialization",),
+ inputs: ::std::vec![],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("NotInitializing"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("NotInitializing"),
+ inputs: ::std::vec![],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("OwnableInvalidOwner"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("OwnableInvalidOwner",),
+ 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"),
+ ),
+ },],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("OwnableUnauthorizedAccount"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("OwnableUnauthorizedAccount",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("account"),
+ kind: ::ethers::core::abi::ethabi::ParamType::Address,
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("address"),
+ ),
+ },],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("UUPSUnauthorizedCallContext"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("UUPSUnauthorizedCallContext",),
+ inputs: ::std::vec![],
+ },],
+ ),
+ (
+ ::std::borrow::ToOwned::to_owned("UUPSUnsupportedProxiableUUID"),
+ ::std::vec![::ethers::core::abi::ethabi::AbiError {
+ name: ::std::borrow::ToOwned::to_owned("UUPSUnsupportedProxiableUUID",),
+ inputs: ::std::vec![::ethers::core::abi::ethabi::Param {
+ name: ::std::borrow::ToOwned::to_owned("slot"),
+ kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize,),
+ internal_type: ::core::option::Option::Some(
+ ::std::borrow::ToOwned::to_owned("bytes32"),
+ ),
+ },],
+ },],
),
]),
- errors: ::std::collections::BTreeMap::new(),
receive: false,
fallback: false,
}
}
///The parsed JSON ABI of the contract.
- pub static EMAILAUTH_ABI: ::ethers::contract::Lazy<::ethers::core::abi::Abi> = ::ethers::contract::Lazy::new(
- __abi,
- );
+ pub static EMAILAUTH_ABI: ::ethers::contract::Lazy<::ethers::core::abi::Abi> =
+ ::ethers::contract::Lazy::new(__abi);
pub struct EmailAuth(::ethers::contract::Contract);
impl ::core::clone::Clone for EmailAuth {
fn clone(&self) -> Self {
@@ -872,7 +770,9 @@ pub mod email_auth {
}
impl ::core::fmt::Debug for EmailAuth {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
- f.debug_tuple(::core::stringify!(EmailAuth)).field(&self.address()).finish()
+ f.debug_tuple(::core::stringify!(EmailAuth))
+ .field(&self.address())
+ .finish()
}
}
impl EmailAuth {
@@ -882,18 +782,22 @@ pub mod email_auth {
address: T,
client: ::std::sync::Arc,
) -> Self {
- Self(
- ::ethers::contract::Contract::new(
- address.into(),
- EMAILAUTH_ABI.clone(),
- client,
- ),
- )
+ Self(::ethers::contract::Contract::new(
+ address.into(),
+ EMAILAUTH_ABI.clone(),
+ client,
+ ))
+ }
+ ///Calls the contract's `UPGRADE_INTERFACE_VERSION` (0xad3cb1cc) function
+ pub fn upgrade_interface_version(
+ &self,
+ ) -> ::ethers::contract::builders::ContractCall {
+ self.0
+ .method_hash([173, 60, 177, 204], ())
+ .expect("method not found (this should never happen)")
}
///Calls the contract's `accountSalt` (0x6c74921e) function
- pub fn account_salt(
- &self,
- ) -> ::ethers::contract::builders::ContractCall {
+ pub fn account_salt(&self) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([108, 116, 146, 30], ())
.expect("method not found (this should never happen)")
@@ -943,10 +847,7 @@ pub mod email_auth {
///Calls the contract's `dkim` (0x400ad5ce) function
pub fn dkim(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([64, 10, 213, 206], ())
.expect("method not found (this should never happen)")
@@ -954,10 +855,7 @@ pub mod email_auth {
///Calls the contract's `dkimRegistryAddr` (0x1bc01b83) function
pub fn dkim_registry_addr(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([27, 192, 27, 131], ())
.expect("method not found (this should never happen)")
@@ -966,21 +864,20 @@ pub mod email_auth {
pub fn get_subject_template(
&self,
template_id: ::ethers::core::types::U256,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::std::vec::Vec<::std::string::String>,
- > {
+ ) -> ::ethers::contract::builders::ContractCall>
+ {
self.0
.method_hash([30, 5, 160, 40], template_id)
.expect("method not found (this should never happen)")
}
- ///Calls the contract's `initialize` (0x9498bd71) function
+ ///Calls the contract's `initialize` (0xbe13f47c) function
pub fn initialize(
&self,
+ initial_owner: ::ethers::core::types::Address,
account_salt: [u8; 32],
) -> ::ethers::contract::builders::ContractCall {
self.0
- .method_hash([148, 152, 189, 113], account_salt)
+ .method_hash([190, 19, 244, 124], (initial_owner, account_salt))
.expect("method not found (this should never happen)")
}
///Calls the contract's `insertSubjectTemplate` (0xc4b84df4) function
@@ -1014,26 +911,19 @@ pub mod email_auth {
///Calls the contract's `owner` (0x8da5cb5b) function
pub fn owner(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([141, 165, 203, 91], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `proxiableUUID` (0x52d1902d) function
- pub fn proxiable_uuid(
- &self,
- ) -> ::ethers::contract::builders::ContractCall {
+ pub fn proxiable_uuid(&self) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([82, 209, 144, 45], ())
.expect("method not found (this should never happen)")
}
///Calls the contract's `renounceOwnership` (0x715018a6) function
- pub fn renounce_ownership(
- &self,
- ) -> ::ethers::contract::builders::ContractCall {
+ pub fn renounce_ownership(&self) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([113, 80, 24, 166], ())
.expect("method not found (this should never happen)")
@@ -1102,15 +992,6 @@ pub mod email_auth {
.method_hash([151, 252, 0, 124], verifier_addr)
.expect("method not found (this should never happen)")
}
- ///Calls the contract's `upgradeTo` (0x3659cfe6) function
- pub fn upgrade_to(
- &self,
- new_implementation: ::ethers::core::types::Address,
- ) -> ::ethers::contract::builders::ContractCall {
- self.0
- .method_hash([54, 89, 207, 230], new_implementation)
- .expect("method not found (this should never happen)")
- }
///Calls the contract's `upgradeToAndCall` (0x4f1ef286) function
pub fn upgrade_to_and_call(
&self,
@@ -1133,10 +1014,7 @@ pub mod email_auth {
///Calls the contract's `verifier` (0x2b7ac3f3) function
pub fn verifier(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([43, 122, 195, 243], ())
.expect("method not found (this should never happen)")
@@ -1144,110 +1022,429 @@ pub mod email_auth {
///Calls the contract's `verifierAddr` (0x663ea2e2) function
pub fn verifier_addr(
&self,
- ) -> ::ethers::contract::builders::ContractCall<
- M,
- ::ethers::core::types::Address,
- > {
+ ) -> ::ethers::contract::builders::ContractCall {
self.0
.method_hash([102, 62, 162, 226], ())
.expect("method not found (this should never happen)")
}
- ///Gets the contract's `AdminChanged` event
- pub fn admin_changed_filter(
- &self,
- ) -> ::ethers::contract::builders::Event<
- ::std::sync::Arc,
- M,
- AdminChangedFilter,
- > {
- self.0.event()
- }
- ///Gets the contract's `BeaconUpgraded` event
- pub fn beacon_upgraded_filter(
- &self,
- ) -> ::ethers::contract::builders::Event<
- ::std::sync::Arc,
- M,
- BeaconUpgradedFilter,
- > {
- self.0.event()
- }
///Gets the contract's `Initialized` event
pub fn initialized_filter(
&self,
- ) -> ::ethers::contract::builders::Event<
- ::std::sync::Arc,
- M,
- InitializedFilter,
- > {
+ ) -> ::ethers::contract::builders::Event<::std::sync::Arc, M, InitializedFilter>
+ {
self.0.event()
}
///Gets the contract's `OwnershipTransferred` event
pub fn ownership_transferred_filter(
&self,
- ) -> ::ethers::contract::builders::Event<
- ::std::sync::Arc,
- M,
- OwnershipTransferredFilter,
- > {
+ ) -> ::ethers::contract::builders::Event<::std::sync::Arc, M, OwnershipTransferredFilter>
+ {
self.0.event()
}
///Gets the contract's `Upgraded` event
pub fn upgraded_filter(
&self,
- ) -> ::ethers::contract::builders::Event<
- ::std::sync::Arc,
- M,
- UpgradedFilter,
- > {
+ ) -> ::ethers::contract::builders::Event<::std::sync::Arc, M, UpgradedFilter> {
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,
- EmailAuthEvents,
- > {
- self.0.event_with_filter(::core::default::Default::default())
+ ) -> ::ethers::contract::builders::Event<::std::sync::Arc, M, EmailAuthEvents> {
+ self.0
+ .event_with_filter(::core::default::Default::default())
}
}
- impl From<::ethers::contract::Contract>
- for EmailAuth {
+ impl From<::ethers::contract::Contract> for EmailAuth {
fn from(contract: ::ethers::contract::Contract) -> Self {
Self::new(contract.address(), contract.client())
}
}
+ ///Custom Error type `AddressEmptyCode` with signature `AddressEmptyCode(address)` and selector `0x9996b315`
#[derive(
Clone,
- ::ethers::contract::EthEvent,
+ ::ethers::contract::EthError,
::ethers::contract::EthDisplay,
Default,
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
- #[ethevent(name = "AdminChanged", abi = "AdminChanged(address,address)")]
- pub struct AdminChangedFilter {
- pub previous_admin: ::ethers::core::types::Address,
- pub new_admin: ::ethers::core::types::Address,
+ #[etherror(name = "AddressEmptyCode", abi = "AddressEmptyCode(address)")]
+ pub struct AddressEmptyCode {
+ pub target: ::ethers::core::types::Address,
}
+ ///Custom Error type `ERC1967InvalidImplementation` with signature `ERC1967InvalidImplementation(address)` and selector `0x4c9c8ce3`
#[derive(
Clone,
- ::ethers::contract::EthEvent,
+ ::ethers::contract::EthError,
::ethers::contract::EthDisplay,
Default,
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
- #[ethevent(name = "BeaconUpgraded", abi = "BeaconUpgraded(address)")]
- pub struct BeaconUpgradedFilter {
- #[ethevent(indexed)]
- pub beacon: ::ethers::core::types::Address,
+ #[etherror(
+ name = "ERC1967InvalidImplementation",
+ abi = "ERC1967InvalidImplementation(address)"
+ )]
+ pub struct ERC1967InvalidImplementation {
+ pub implementation: ::ethers::core::types::Address,
+ }
+ ///Custom Error type `ERC1967NonPayable` with signature `ERC1967NonPayable()` and selector `0xb398979f`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(name = "ERC1967NonPayable", abi = "ERC1967NonPayable()")]
+ pub struct ERC1967NonPayable;
+ ///Custom Error type `FailedInnerCall` with signature `FailedInnerCall()` and selector `0x1425ea42`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(name = "FailedInnerCall", abi = "FailedInnerCall()")]
+ pub struct FailedInnerCall;
+ ///Custom Error type `InvalidInitialization` with signature `InvalidInitialization()` and selector `0xf92ee8a9`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(name = "InvalidInitialization", abi = "InvalidInitialization()")]
+ pub struct InvalidInitialization;
+ ///Custom Error type `NotInitializing` with signature `NotInitializing()` and selector `0xd7e6bcf8`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(name = "NotInitializing", abi = "NotInitializing()")]
+ pub struct NotInitializing;
+ ///Custom Error type `OwnableInvalidOwner` with signature `OwnableInvalidOwner(address)` and selector `0x1e4fbdf7`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(name = "OwnableInvalidOwner", abi = "OwnableInvalidOwner(address)")]
+ pub struct OwnableInvalidOwner {
+ pub owner: ::ethers::core::types::Address,
+ }
+ ///Custom Error type `OwnableUnauthorizedAccount` with signature `OwnableUnauthorizedAccount(address)` and selector `0x118cdaa7`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(
+ name = "OwnableUnauthorizedAccount",
+ abi = "OwnableUnauthorizedAccount(address)"
+ )]
+ pub struct OwnableUnauthorizedAccount {
+ pub account: ::ethers::core::types::Address,
+ }
+ ///Custom Error type `UUPSUnauthorizedCallContext` with signature `UUPSUnauthorizedCallContext()` and selector `0xe07c8dba`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(
+ name = "UUPSUnauthorizedCallContext",
+ abi = "UUPSUnauthorizedCallContext()"
+ )]
+ pub struct UUPSUnauthorizedCallContext;
+ ///Custom Error type `UUPSUnsupportedProxiableUUID` with signature `UUPSUnsupportedProxiableUUID(bytes32)` and selector `0xaa1d49a4`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthError,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[etherror(
+ name = "UUPSUnsupportedProxiableUUID",
+ abi = "UUPSUnsupportedProxiableUUID(bytes32)"
+ )]
+ pub struct UUPSUnsupportedProxiableUUID {
+ pub slot: [u8; 32],
+ }
+ ///Container type for all of the contract's custom errors
+ #[derive(Clone, ::ethers::contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
+ pub enum EmailAuthErrors {
+ AddressEmptyCode(AddressEmptyCode),
+ ERC1967InvalidImplementation(ERC1967InvalidImplementation),
+ ERC1967NonPayable(ERC1967NonPayable),
+ FailedInnerCall(FailedInnerCall),
+ InvalidInitialization(InvalidInitialization),
+ NotInitializing(NotInitializing),
+ OwnableInvalidOwner(OwnableInvalidOwner),
+ OwnableUnauthorizedAccount(OwnableUnauthorizedAccount),
+ UUPSUnauthorizedCallContext(UUPSUnauthorizedCallContext),
+ UUPSUnsupportedProxiableUUID(UUPSUnsupportedProxiableUUID),
+ /// The standard solidity revert string, with selector
+ /// Error(string) -- 0x08c379a0
+ RevertString(::std::string::String),
+ }
+ impl ::ethers::core::abi::AbiDecode for EmailAuthErrors {
+ fn decode(
+ data: impl AsRef<[u8]>,
+ ) -> ::core::result::Result {
+ let data = data.as_ref();
+ if let Ok(decoded) =
+ <::std::string::String as ::ethers::core::abi::AbiDecode>::decode(data)
+ {
+ return Ok(Self::RevertString(decoded));
+ }
+ if let Ok(decoded) = ::decode(data)
+ {
+ return Ok(Self::AddressEmptyCode(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::ERC1967InvalidImplementation(decoded));
+ }
+ if let Ok(decoded) = ::decode(data)
+ {
+ return Ok(Self::ERC1967NonPayable(decoded));
+ }
+ if let Ok(decoded) = ::decode(data) {
+ return Ok(Self::FailedInnerCall(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::InvalidInitialization(decoded));
+ }
+ if let Ok(decoded) = ::decode(data) {
+ return Ok(Self::NotInitializing(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::OwnableInvalidOwner(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::OwnableUnauthorizedAccount(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::UUPSUnauthorizedCallContext(decoded));
+ }
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::UUPSUnsupportedProxiableUUID(decoded));
+ }
+ Err(::ethers::core::abi::Error::InvalidData.into())
+ }
+ }
+ impl ::ethers::core::abi::AbiEncode for EmailAuthErrors {
+ fn encode(self) -> ::std::vec::Vec {
+ match self {
+ Self::AddressEmptyCode(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::ERC1967InvalidImplementation(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::ERC1967NonPayable(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::FailedInnerCall(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::InvalidInitialization(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::NotInitializing(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::OwnableInvalidOwner(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::OwnableUnauthorizedAccount(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::UUPSUnauthorizedCallContext(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::UUPSUnsupportedProxiableUUID(element) => {
+ ::ethers::core::abi::AbiEncode::encode(element)
+ }
+ Self::RevertString(s) => ::ethers::core::abi::AbiEncode::encode(s),
+ }
+ }
+ }
+ impl ::ethers::contract::ContractRevert for EmailAuthErrors {
+ fn valid_selector(selector: [u8; 4]) -> bool {
+ match selector {
+ [0x08, 0xc3, 0x79, 0xa0] => true,
+ _ if selector == ::selector() => {
+ true
+ }
+ _ if selector
+ == ::selector(
+ ) =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector() =>
+ {
+ true
+ }
+ _ if selector == ::selector() => {
+ true
+ }
+ _ if selector
+ == ::selector() =>
+ {
+ true
+ }
+ _ if selector == ::selector() => {
+ true
+ }
+ _ if selector
+ == ::selector() =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector() =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector(
+ ) =>
+ {
+ true
+ }
+ _ if selector
+ == ::selector(
+ ) =>
+ {
+ true
+ }
+ _ => false,
+ }
+ }
+ }
+ impl ::core::fmt::Display for EmailAuthErrors {
+ fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
+ match self {
+ Self::AddressEmptyCode(element) => ::core::fmt::Display::fmt(element, f),
+ Self::ERC1967InvalidImplementation(element) => {
+ ::core::fmt::Display::fmt(element, f)
+ }
+ Self::ERC1967NonPayable(element) => ::core::fmt::Display::fmt(element, f),
+ Self::FailedInnerCall(element) => ::core::fmt::Display::fmt(element, f),
+ Self::InvalidInitialization(element) => ::core::fmt::Display::fmt(element, f),
+ Self::NotInitializing(element) => ::core::fmt::Display::fmt(element, f),
+ Self::OwnableInvalidOwner(element) => ::core::fmt::Display::fmt(element, f),
+ Self::OwnableUnauthorizedAccount(element) => ::core::fmt::Display::fmt(element, f),
+ Self::UUPSUnauthorizedCallContext(element) => ::core::fmt::Display::fmt(element, f),
+ Self::UUPSUnsupportedProxiableUUID(element) => {
+ ::core::fmt::Display::fmt(element, f)
+ }
+ Self::RevertString(s) => ::core::fmt::Display::fmt(s, f),
+ }
+ }
+ }
+ impl ::core::convert::From<::std::string::String> for EmailAuthErrors {
+ fn from(value: String) -> Self {
+ Self::RevertString(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: AddressEmptyCode) -> Self {
+ Self::AddressEmptyCode(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: ERC1967InvalidImplementation) -> Self {
+ Self::ERC1967InvalidImplementation(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: ERC1967NonPayable) -> Self {
+ Self::ERC1967NonPayable(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: FailedInnerCall) -> Self {
+ Self::FailedInnerCall(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: InvalidInitialization) -> Self {
+ Self::InvalidInitialization(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: NotInitializing) -> Self {
+ Self::NotInitializing(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: OwnableInvalidOwner) -> Self {
+ Self::OwnableInvalidOwner(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: OwnableUnauthorizedAccount) -> Self {
+ Self::OwnableUnauthorizedAccount(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: UUPSUnauthorizedCallContext) -> Self {
+ Self::UUPSUnauthorizedCallContext(value)
+ }
+ }
+ impl ::core::convert::From for EmailAuthErrors {
+ fn from(value: UUPSUnsupportedProxiableUUID) -> Self {
+ Self::UUPSUnsupportedProxiableUUID(value)
+ }
}
#[derive(
Clone,
@@ -1257,11 +1454,11 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
- #[ethevent(name = "Initialized", abi = "Initialized(uint8)")]
+ #[ethevent(name = "Initialized", abi = "Initialized(uint64)")]
pub struct InitializedFilter {
- pub version: u8,
+ pub version: u64,
}
#[derive(
Clone,
@@ -1271,7 +1468,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethevent(
name = "OwnershipTransferred",
@@ -1291,7 +1488,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethevent(name = "Upgraded", abi = "Upgraded(address)")]
pub struct UpgradedFilter {
@@ -1301,8 +1498,6 @@ pub mod email_auth {
///Container type for all of the contract's events
#[derive(Clone, ::ethers::contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
pub enum EmailAuthEvents {
- AdminChangedFilter(AdminChangedFilter),
- BeaconUpgradedFilter(BeaconUpgradedFilter),
InitializedFilter(InitializedFilter),
OwnershipTransferredFilter(OwnershipTransferredFilter),
UpgradedFilter(UpgradedFilter),
@@ -1311,12 +1506,6 @@ pub mod email_auth {
fn decode_log(
log: &::ethers::core::abi::RawLog,
) -> ::core::result::Result {
- if let Ok(decoded) = AdminChangedFilter::decode_log(log) {
- return Ok(EmailAuthEvents::AdminChangedFilter(decoded));
- }
- if let Ok(decoded) = BeaconUpgradedFilter::decode_log(log) {
- return Ok(EmailAuthEvents::BeaconUpgradedFilter(decoded));
- }
if let Ok(decoded) = InitializedFilter::decode_log(log) {
return Ok(EmailAuthEvents::InitializedFilter(decoded));
}
@@ -1332,30 +1521,12 @@ pub mod email_auth {
impl ::core::fmt::Display for EmailAuthEvents {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
match self {
- Self::AdminChangedFilter(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
- Self::BeaconUpgradedFilter(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
Self::InitializedFilter(element) => ::core::fmt::Display::fmt(element, f),
- Self::OwnershipTransferredFilter(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::OwnershipTransferredFilter(element) => ::core::fmt::Display::fmt(element, f),
Self::UpgradedFilter(element) => ::core::fmt::Display::fmt(element, f),
}
}
}
- impl ::core::convert::From for EmailAuthEvents {
- fn from(value: AdminChangedFilter) -> Self {
- Self::AdminChangedFilter(value)
- }
- }
- impl ::core::convert::From for EmailAuthEvents {
- fn from(value: BeaconUpgradedFilter) -> Self {
- Self::BeaconUpgradedFilter(value)
- }
- }
impl ::core::convert::From for EmailAuthEvents {
fn from(value: InitializedFilter) -> Self {
Self::InitializedFilter(value)
@@ -1371,6 +1542,22 @@ pub mod email_auth {
Self::UpgradedFilter(value)
}
}
+ ///Container type for all input parameters for the `UPGRADE_INTERFACE_VERSION` function with signature `UPGRADE_INTERFACE_VERSION()` and selector `0xad3cb1cc`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthCall,
+ ::ethers::contract::EthDisplay,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ #[ethcall(
+ name = "UPGRADE_INTERFACE_VERSION",
+ abi = "UPGRADE_INTERFACE_VERSION()"
+ )]
+ pub struct UpgradeInterfaceVersionCall;
///Container type for all input parameters for the `accountSalt` function with signature `accountSalt()` and selector `0x6c74921e`
#[derive(
Clone,
@@ -1380,7 +1567,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "accountSalt", abi = "accountSalt()")]
pub struct AccountSaltCall;
@@ -1393,7 +1580,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "authEmail",
@@ -1411,7 +1598,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "authedHash", abi = "authedHash(bytes32)")]
pub struct AuthedHashCall(pub [u8; 32]);
@@ -1424,7 +1611,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "computeMsgHash",
@@ -1445,7 +1632,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "deleteSubjectTemplate", abi = "deleteSubjectTemplate(uint256)")]
pub struct DeleteSubjectTemplateCall {
@@ -1460,7 +1647,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "dkim", abi = "dkim()")]
pub struct DkimCall;
@@ -1473,7 +1660,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "dkimRegistryAddr", abi = "dkimRegistryAddr()")]
pub struct DkimRegistryAddrCall;
@@ -1486,13 +1673,13 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "getSubjectTemplate", abi = "getSubjectTemplate(uint256)")]
pub struct GetSubjectTemplateCall {
pub template_id: ::ethers::core::types::U256,
}
- ///Container type for all input parameters for the `initialize` function with signature `initialize(bytes32)` and selector `0x9498bd71`
+ ///Container type for all input parameters for the `initialize` function with signature `initialize(address,bytes32)` and selector `0xbe13f47c`
#[derive(
Clone,
::ethers::contract::EthCall,
@@ -1501,10 +1688,11 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
- #[ethcall(name = "initialize", abi = "initialize(bytes32)")]
+ #[ethcall(name = "initialize", abi = "initialize(address,bytes32)")]
pub struct InitializeCall {
+ pub initial_owner: ::ethers::core::types::Address,
pub account_salt: [u8; 32],
}
///Container type for all input parameters for the `insertSubjectTemplate` function with signature `insertSubjectTemplate(uint256,string[])` and selector `0xc4b84df4`
@@ -1516,7 +1704,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "insertSubjectTemplate",
@@ -1535,7 +1723,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "isValidSignature", abi = "isValidSignature(bytes32,bytes)")]
pub struct IsValidSignatureCall {
@@ -1551,7 +1739,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "lastTimestamp", abi = "lastTimestamp()")]
pub struct LastTimestampCall;
@@ -1564,7 +1752,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "owner", abi = "owner()")]
pub struct OwnerCall;
@@ -1577,7 +1765,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "proxiableUUID", abi = "proxiableUUID()")]
pub struct ProxiableUUIDCall;
@@ -1590,7 +1778,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "renounceOwnership", abi = "renounceOwnership()")]
pub struct RenounceOwnershipCall;
@@ -1603,9 +1791,12 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
+ )]
+ #[ethcall(
+ name = "setTimestampCheckEnabled",
+ abi = "setTimestampCheckEnabled(bool)"
)]
- #[ethcall(name = "setTimestampCheckEnabled", abi = "setTimestampCheckEnabled(bool)")]
pub struct SetTimestampCheckEnabledCall {
pub enabled: bool,
}
@@ -1618,7 +1809,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "subjectTemplates", abi = "subjectTemplates(uint256,uint256)")]
pub struct SubjectTemplatesCall(
@@ -1634,7 +1825,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "timestampCheckEnabled", abi = "timestampCheckEnabled()")]
pub struct TimestampCheckEnabledCall;
@@ -1647,7 +1838,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "transferOwnership", abi = "transferOwnership(address)")]
pub struct TransferOwnershipCall {
@@ -1662,7 +1853,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "updateDKIMRegistry", abi = "updateDKIMRegistry(address)")]
pub struct UpdateDKIMRegistryCall {
@@ -1677,7 +1868,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(
name = "updateSubjectTemplate",
@@ -1696,27 +1887,12 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "updateVerifier", abi = "updateVerifier(address)")]
pub struct UpdateVerifierCall {
pub verifier_addr: ::ethers::core::types::Address,
}
- ///Container type for all input parameters for the `upgradeTo` function with signature `upgradeTo(address)` and selector `0x3659cfe6`
- #[derive(
- Clone,
- ::ethers::contract::EthCall,
- ::ethers::contract::EthDisplay,
- Default,
- Debug,
- PartialEq,
- Eq,
- Hash
- )]
- #[ethcall(name = "upgradeTo", abi = "upgradeTo(address)")]
- pub struct UpgradeToCall {
- pub new_implementation: ::ethers::core::types::Address,
- }
///Container type for all input parameters for the `upgradeToAndCall` function with signature `upgradeToAndCall(address,bytes)` and selector `0x4f1ef286`
#[derive(
Clone,
@@ -1726,7 +1902,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "upgradeToAndCall", abi = "upgradeToAndCall(address,bytes)")]
pub struct UpgradeToAndCallCall {
@@ -1742,7 +1918,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "usedNullifiers", abi = "usedNullifiers(bytes32)")]
pub struct UsedNullifiersCall(pub [u8; 32]);
@@ -1755,7 +1931,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "verifier", abi = "verifier()")]
pub struct VerifierCall;
@@ -1768,13 +1944,14 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
#[ethcall(name = "verifierAddr", abi = "verifierAddr()")]
pub struct VerifierAddrCall;
///Container type for all of the contract's call
#[derive(Clone, ::ethers::contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
pub enum EmailAuthCalls {
+ UpgradeInterfaceVersion(UpgradeInterfaceVersionCall),
AccountSalt(AccountSaltCall),
AuthEmail(AuthEmailCall),
AuthedHash(AuthedHashCall),
@@ -1797,7 +1974,6 @@ pub mod email_auth {
UpdateDKIMRegistry(UpdateDKIMRegistryCall),
UpdateSubjectTemplate(UpdateSubjectTemplateCall),
UpdateVerifier(UpdateVerifierCall),
- UpgradeTo(UpgradeToCall),
UpgradeToAndCall(UpgradeToAndCallCall),
UsedNullifiers(UsedNullifiersCall),
Verifier(VerifierCall),
@@ -1808,139 +1984,122 @@ pub mod email_auth {
data: impl AsRef<[u8]>,
) -> ::core::result::Result {
let data = data.as_ref();
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
+ return Ok(Self::UpgradeInterfaceVersion(decoded));
+ }
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::AccountSalt(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::AuthEmail(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::AuthedHash(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::ComputeMsgHash(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::DeleteSubjectTemplate(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::Dkim(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::DkimRegistryAddr(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::GetSubjectTemplate(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::Initialize(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::InsertSubjectTemplate(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::IsValidSignature(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data)
+ {
return Ok(Self::LastTimestamp(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::Owner(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data)
+ {
return Ok(Self::ProxiableUUID(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::RenounceOwnership(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::SetTimestampCheckEnabled(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::SubjectTemplates(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::TimestampCheckEnabled(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::TransferOwnership(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::UpdateDKIMRegistry(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::UpdateSubjectTemplate(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::UpdateVerifier(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
- return Ok(Self::UpgradeTo(decoded));
- }
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::UpgradeToAndCall(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) =
+ ::decode(data)
+ {
return Ok(Self::UsedNullifiers(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data) {
return Ok(Self::Verifier(decoded));
}
- if let Ok(decoded) = ::decode(
- data,
- ) {
+ if let Ok(decoded) = ::decode(data)
+ {
return Ok(Self::VerifierAddr(decoded));
}
Err(::ethers::core::abi::Error::InvalidData.into())
@@ -1949,126 +2108,78 @@ pub mod email_auth {
impl ::ethers::core::abi::AbiEncode for EmailAuthCalls {
fn encode(self) -> Vec {
match self {
- Self::AccountSalt(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::AuthEmail(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::AuthedHash(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::ComputeMsgHash(element) => {
+ Self::UpgradeInterfaceVersion(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
+ Self::AccountSalt(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::AuthEmail(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::AuthedHash(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::ComputeMsgHash(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::DeleteSubjectTemplate(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::Dkim(element) => ::ethers::core::abi::AbiEncode::encode(element),
- Self::DkimRegistryAddr(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::DkimRegistryAddr(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::GetSubjectTemplate(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
- Self::Initialize(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::Initialize(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::InsertSubjectTemplate(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
- Self::IsValidSignature(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::LastTimestamp(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::IsValidSignature(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::LastTimestamp(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::Owner(element) => ::ethers::core::abi::AbiEncode::encode(element),
- Self::ProxiableUUID(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::RenounceOwnership(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::ProxiableUUID(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::RenounceOwnership(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::SetTimestampCheckEnabled(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
- Self::SubjectTemplates(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::SubjectTemplates(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::TimestampCheckEnabled(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
- Self::TransferOwnership(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::TransferOwnership(element) => ::ethers::core::abi::AbiEncode::encode(element),
Self::UpdateDKIMRegistry(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
Self::UpdateSubjectTemplate(element) => {
::ethers::core::abi::AbiEncode::encode(element)
}
- Self::UpdateVerifier(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::UpgradeTo(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::UpgradeToAndCall(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::UsedNullifiers(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::Verifier(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
- Self::VerifierAddr(element) => {
- ::ethers::core::abi::AbiEncode::encode(element)
- }
+ Self::UpdateVerifier(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::UpgradeToAndCall(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::UsedNullifiers(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::Verifier(element) => ::ethers::core::abi::AbiEncode::encode(element),
+ Self::VerifierAddr(element) => ::ethers::core::abi::AbiEncode::encode(element),
}
}
}
impl ::core::fmt::Display for EmailAuthCalls {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
match self {
+ Self::UpgradeInterfaceVersion(element) => ::core::fmt::Display::fmt(element, f),
Self::AccountSalt(element) => ::core::fmt::Display::fmt(element, f),
Self::AuthEmail(element) => ::core::fmt::Display::fmt(element, f),
Self::AuthedHash(element) => ::core::fmt::Display::fmt(element, f),
Self::ComputeMsgHash(element) => ::core::fmt::Display::fmt(element, f),
- Self::DeleteSubjectTemplate(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::DeleteSubjectTemplate(element) => ::core::fmt::Display::fmt(element, f),
Self::Dkim(element) => ::core::fmt::Display::fmt(element, f),
Self::DkimRegistryAddr(element) => ::core::fmt::Display::fmt(element, f),
- Self::GetSubjectTemplate(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::GetSubjectTemplate(element) => ::core::fmt::Display::fmt(element, f),
Self::Initialize(element) => ::core::fmt::Display::fmt(element, f),
- Self::InsertSubjectTemplate(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::InsertSubjectTemplate(element) => ::core::fmt::Display::fmt(element, f),
Self::IsValidSignature(element) => ::core::fmt::Display::fmt(element, f),
Self::LastTimestamp(element) => ::core::fmt::Display::fmt(element, f),
Self::Owner(element) => ::core::fmt::Display::fmt(element, f),
Self::ProxiableUUID(element) => ::core::fmt::Display::fmt(element, f),
Self::RenounceOwnership(element) => ::core::fmt::Display::fmt(element, f),
- Self::SetTimestampCheckEnabled(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::SetTimestampCheckEnabled(element) => ::core::fmt::Display::fmt(element, f),
Self::SubjectTemplates(element) => ::core::fmt::Display::fmt(element, f),
- Self::TimestampCheckEnabled(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::TimestampCheckEnabled(element) => ::core::fmt::Display::fmt(element, f),
Self::TransferOwnership(element) => ::core::fmt::Display::fmt(element, f),
- Self::UpdateDKIMRegistry(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
- Self::UpdateSubjectTemplate(element) => {
- ::core::fmt::Display::fmt(element, f)
- }
+ Self::UpdateDKIMRegistry(element) => ::core::fmt::Display::fmt(element, f),
+ Self::UpdateSubjectTemplate(element) => ::core::fmt::Display::fmt(element, f),
Self::UpdateVerifier(element) => ::core::fmt::Display::fmt(element, f),
- Self::UpgradeTo(element) => ::core::fmt::Display::fmt(element, f),
Self::UpgradeToAndCall(element) => ::core::fmt::Display::fmt(element, f),
Self::UsedNullifiers(element) => ::core::fmt::Display::fmt(element, f),
Self::Verifier(element) => ::core::fmt::Display::fmt(element, f),
@@ -2076,6 +2187,11 @@ pub mod email_auth {
}
}
}
+ impl ::core::convert::From for EmailAuthCalls {
+ fn from(value: UpgradeInterfaceVersionCall) -> Self {
+ Self::UpgradeInterfaceVersion(value)
+ }
+ }
impl ::core::convert::From for EmailAuthCalls {
fn from(value: AccountSaltCall) -> Self {
Self::AccountSalt(value)
@@ -2186,11 +2302,6 @@ pub mod email_auth {
Self::UpdateVerifier(value)
}
}
- impl ::core::convert::From for EmailAuthCalls {
- fn from(value: UpgradeToCall) -> Self {
- Self::UpgradeTo(value)
- }
- }
impl ::core::convert::From for EmailAuthCalls {
fn from(value: UpgradeToAndCallCall) -> Self {
Self::UpgradeToAndCall(value)
@@ -2211,6 +2322,18 @@ pub mod email_auth {
Self::VerifierAddr(value)
}
}
+ ///Container type for all return fields from the `UPGRADE_INTERFACE_VERSION` function with signature `UPGRADE_INTERFACE_VERSION()` and selector `0xad3cb1cc`
+ #[derive(
+ Clone,
+ ::ethers::contract::EthAbiType,
+ ::ethers::contract::EthAbiCodec,
+ Default,
+ Debug,
+ PartialEq,
+ Eq,
+ Hash,
+ )]
+ pub struct UpgradeInterfaceVersionReturn(pub ::std::string::String);
///Container type for all return fields from the `accountSalt` function with signature `accountSalt()` and selector `0x6c74921e`
#[derive(
Clone,
@@ -2220,7 +2343,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct AccountSaltReturn(pub [u8; 32]);
///Container type for all return fields from the `authEmail` function with signature `authEmail((uint256,bytes[],uint256,(string,bytes32,uint256,string,bytes32,bytes32,bool,bytes)))` and selector `0xad3f5f9b`
@@ -2232,7 +2355,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct AuthEmailReturn(pub [u8; 32]);
///Container type for all return fields from the `authedHash` function with signature `authedHash(bytes32)` and selector `0x805811ec`
@@ -2244,7 +2367,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct AuthedHashReturn(pub [u8; 32]);
///Container type for all return fields from the `computeMsgHash` function with signature `computeMsgHash(bytes32,bool,uint256,bytes[])` and selector `0x2bde033d`
@@ -2256,7 +2379,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct ComputeMsgHashReturn(pub [u8; 32]);
///Container type for all return fields from the `dkim` function with signature `dkim()` and selector `0x400ad5ce`
@@ -2268,7 +2391,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct DkimReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `dkimRegistryAddr` function with signature `dkimRegistryAddr()` and selector `0x1bc01b83`
@@ -2280,7 +2403,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct DkimRegistryAddrReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `getSubjectTemplate` function with signature `getSubjectTemplate(uint256)` and selector `0x1e05a028`
@@ -2292,7 +2415,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct GetSubjectTemplateReturn(pub ::std::vec::Vec<::std::string::String>);
///Container type for all return fields from the `isValidSignature` function with signature `isValidSignature(bytes32,bytes)` and selector `0x1626ba7e`
@@ -2304,7 +2427,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct IsValidSignatureReturn(pub [u8; 4]);
///Container type for all return fields from the `lastTimestamp` function with signature `lastTimestamp()` and selector `0x19d8ac61`
@@ -2316,7 +2439,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct LastTimestampReturn(pub ::ethers::core::types::U256);
///Container type for all return fields from the `owner` function with signature `owner()` and selector `0x8da5cb5b`
@@ -2328,7 +2451,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct OwnerReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `proxiableUUID` function with signature `proxiableUUID()` and selector `0x52d1902d`
@@ -2340,7 +2463,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct ProxiableUUIDReturn(pub [u8; 32]);
///Container type for all return fields from the `subjectTemplates` function with signature `subjectTemplates(uint256,uint256)` and selector `0x4bd07760`
@@ -2352,7 +2475,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct SubjectTemplatesReturn(pub ::std::string::String);
///Container type for all return fields from the `timestampCheckEnabled` function with signature `timestampCheckEnabled()` and selector `0x3e56f529`
@@ -2364,7 +2487,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct TimestampCheckEnabledReturn(pub bool);
///Container type for all return fields from the `usedNullifiers` function with signature `usedNullifiers(bytes32)` and selector `0x206137aa`
@@ -2376,7 +2499,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct UsedNullifiersReturn(pub bool);
///Container type for all return fields from the `verifier` function with signature `verifier()` and selector `0x2b7ac3f3`
@@ -2388,7 +2511,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct VerifierReturn(pub ::ethers::core::types::Address);
///Container type for all return fields from the `verifierAddr` function with signature `verifierAddr()` and selector `0x663ea2e2`
@@ -2400,7 +2523,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct VerifierAddrReturn(pub ::ethers::core::types::Address);
///`EmailAuthMsg(uint256,bytes[],uint256,(string,bytes32,uint256,string,bytes32,bytes32,bool,bytes))`
@@ -2412,7 +2535,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct EmailAuthMsg {
pub template_id: ::ethers::core::types::U256,
@@ -2429,7 +2552,7 @@ pub mod email_auth {
Debug,
PartialEq,
Eq,
- Hash
+ Hash,
)]
pub struct EmailProof {
pub domain_name: ::std::string::String,
diff --git a/packages/relayer/src/core.rs b/packages/relayer/src/core.rs
index 054ba0a2..56972d42 100644
--- a/packages/relayer/src/core.rs
+++ b/packages/relayer/src/core.rs
@@ -28,14 +28,6 @@ pub async fn handle_email(
trace!(LOG, "From address: {}", guardian_email_addr; "func" => function_name!());
let subject = parsed_email.get_subject_all()?;
- let account_code_str = db
- .get_invitation_code_from_email_addr(&guardian_email_addr)
- .await?
- .ok_or(anyhow!(
- "The user of email address {} is not registered.",
- guardian_email_addr
- ))?;
-
let request_decomposed_def =
serde_json::from_str(include_str!("./regex_json/request_def.json"))?;
let request_idxes = extract_substr_idxes(&email, &request_decomposed_def)?;
@@ -44,10 +36,10 @@ pub async fn handle_email(
}
info!(LOG, "Request idxes: {:?}", request_idxes; "func" => function_name!());
let request_id = &email[request_idxes[0].0..request_idxes[0].1];
- let request_id_u64 = request_id
- .parse::()
+ let request_id_u32 = request_id
+ .parse::()
.map_err(|e| anyhow!("Failed to parse request_id to u64: {}", e))?;
- let request_record = db.get_request(request_id_u64).await?;
+ let request_record = db.get_request(request_id_u32).await?;
if request_record.is_none() {
return Ok(EmailAuthEvent::Error {
email_addr: guardian_email_addr,
@@ -55,6 +47,21 @@ pub async fn handle_email(
});
}
let request = request_record.unwrap();
+ if request.guardian_email_addr != guardian_email_addr {
+ return Err(anyhow!(
+ "Guardian email address in the request {} is not equal to the one in the email {}",
+ request.guardian_email_addr,
+ guardian_email_addr
+ ));
+ }
+ let account_code_str = db
+ .get_account_code_from_wallet_and_email(&request.wallet_eth_addr, &guardian_email_addr)
+ .await?
+ .ok_or(anyhow!(
+ "The user of the wallet address {} and the email address {} is not registered.",
+ request.wallet_eth_addr,
+ guardian_email_addr
+ ))?;
check_and_update_dkim(
&email,
&parsed_email,
@@ -155,7 +162,7 @@ pub async fn handle_email(
is_set: true,
};
- db.update_credentials(&creds).await?;
+ db.update_credentials_of_account_code(&creds).await?;
let updated_request = Request {
wallet_eth_addr: request.wallet_eth_addr.clone(),
@@ -176,7 +183,7 @@ pub async fn handle_email(
Ok(EmailAuthEvent::AcceptanceSuccess {
wallet_eth_addr: request.wallet_eth_addr,
guardian_email_addr,
- request_id: request_id_u64,
+ request_id: request_id_u32,
})
}
Ok(false) => {
@@ -296,7 +303,7 @@ pub async fn handle_email(
Ok(EmailAuthEvent::RecoverySuccess {
wallet_eth_addr: request.wallet_eth_addr,
guardian_email_addr,
- request_id: request_id_u64,
+ request_id: request_id_u32,
})
}
Ok(false) => {
@@ -418,7 +425,7 @@ pub async fn handle_email(
Ok(EmailAuthEvent::RecoverySuccess {
wallet_eth_addr: request.wallet_eth_addr,
guardian_email_addr,
- request_id: request_id_u64,
+ request_id: request_id_u32,
})
}
Ok(false) => {
diff --git a/packages/relayer/src/database.rs b/packages/relayer/src/database.rs
index d1663312..2cfdd816 100644
--- a/packages/relayer/src/database.rs
+++ b/packages/relayer/src/database.rs
@@ -12,7 +12,7 @@ pub struct Credentials {
#[derive(Debug, Clone)]
pub struct Request {
- pub request_id: u64,
+ pub request_id: u32,
pub wallet_eth_addr: String,
pub guardian_email_addr: String,
pub is_for_recovery: bool,
@@ -96,12 +96,19 @@ impl Database {
}
}
- pub(crate) async fn is_email_registered(&self, email_addr: &str) -> bool {
- let row = sqlx::query("SELECT * FROM credentials WHERE guardian_email_addr = $1")
- .bind(email_addr)
- .fetch_optional(&self.db)
- .await
- .unwrap();
+ pub(crate) async fn is_wallet_and_email_registered(
+ &self,
+ wallet_eth_addr: &str,
+ email_addr: &str,
+ ) -> bool {
+ let row = sqlx::query(
+ "SELECT * FROM credentials WHERE wallet_eth_addr = $1 AND guardian_email_addr = $2",
+ )
+ .bind(wallet_eth_addr)
+ .bind(email_addr)
+ .fetch_optional(&self.db)
+ .await
+ .unwrap();
match row {
Some(_) => true,
@@ -109,7 +116,7 @@ impl Database {
}
}
- pub(crate) async fn update_credentials(&self, row: &Credentials) -> Result<()> {
+ pub(crate) async fn update_credentials_of_account_code(&self, row: &Credentials) -> Result<()> {
let res = sqlx::query("UPDATE credentials SET wallet_eth_addr = $1, guardian_email_addr = $2, is_set = $3 WHERE account_code = $4")
.bind(&row.wallet_eth_addr)
.bind(&row.guardian_email_addr)
@@ -120,6 +127,20 @@ impl Database {
Ok(())
}
+ pub(crate) async fn update_credentials_of_wallet_and_email(
+ &self,
+ row: &Credentials,
+ ) -> Result<()> {
+ let res = sqlx::query("UPDATE credentials SET account_code = $1, is_set = $2 WHERE wallet_eth_addr = $3, guardian_email_addr = $4")
+ .bind(&row.account_code)
+ .bind(row.is_set)
+ .bind(&row.wallet_eth_addr)
+ .bind(&row.guardian_email_addr)
+ .execute(&self.db)
+ .await?;
+ Ok(())
+ }
+
#[named]
pub(crate) async fn insert_credentials(&self, row: &Credentials) -> Result<()> {
info!(LOG, "insert row {:?}", row; "func" => function_name!());
@@ -155,7 +176,7 @@ impl Database {
}
#[named]
- pub(crate) async fn get_request(&self, request_id: u64) -> Result