// Code generated - DO NOT EDIT. // This file is a generated binding and any manual changes will be lost. package destinationharness import ( "errors" "math/big" "strings" ethereum "github.com/ethereum/go-ethereum" "github.com/ethereum/go-ethereum/accounts/abi" "github.com/ethereum/go-ethereum/accounts/abi/bind" "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/event" ) // Reference imports to suppress errors if they are not otherwise used. var ( _ = errors.New _ = big.NewInt _ = strings.NewReader _ = ethereum.NotFound _ = bind.Bind _ = common.Big1 _ = types.BloomLookup _ = event.NewSubscription _ = abi.ConvertType ) // AgentStatus is an auto generated low-level Go binding around an user-defined struct. type AgentStatus struct { Flag uint8 Domain uint32 Index uint32 } // DisputeStatus is an auto generated low-level Go binding around an user-defined struct. type DisputeStatus struct { Flag uint8 OpenedAt *big.Int ResolvedAt *big.Int } // MultiCallableCall is an auto generated low-level Go binding around an user-defined struct. type MultiCallableCall struct { AllowFailure bool CallData []byte } // MultiCallableResult is an auto generated low-level Go binding around an user-defined struct. type MultiCallableResult struct { Success bool ReturnData []byte } // AddressMetaData contains all meta data concerning the Address contract. var AddressMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212207869384d1b8348e94465e7831e06f9839d895c935397e6a0cbb84cbfa5863fc464736f6c63430008110033", } // AddressABI is the input ABI used to generate the binding from. // Deprecated: Use AddressMetaData.ABI instead. var AddressABI = AddressMetaData.ABI // AddressBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use AddressMetaData.Bin instead. var AddressBin = AddressMetaData.Bin // DeployAddress deploys a new Ethereum contract, binding an instance of Address to it. func DeployAddress(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Address, error) { parsed, err := AddressMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(AddressBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &Address{AddressCaller: AddressCaller{contract: contract}, AddressTransactor: AddressTransactor{contract: contract}, AddressFilterer: AddressFilterer{contract: contract}}, nil } // Address is an auto generated Go binding around an Ethereum contract. type Address struct { AddressCaller // Read-only binding to the contract AddressTransactor // Write-only binding to the contract AddressFilterer // Log filterer for contract events } // AddressCaller is an auto generated read-only Go binding around an Ethereum contract. type AddressCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AddressTransactor is an auto generated write-only Go binding around an Ethereum contract. type AddressTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AddressFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type AddressFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AddressSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type AddressSession struct { Contract *Address // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AddressCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type AddressCallerSession struct { Contract *AddressCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // AddressTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type AddressTransactorSession struct { Contract *AddressTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AddressRaw is an auto generated low-level Go binding around an Ethereum contract. type AddressRaw struct { Contract *Address // Generic contract binding to access the raw methods on } // AddressCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type AddressCallerRaw struct { Contract *AddressCaller // Generic read-only contract binding to access the raw methods on } // AddressTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type AddressTransactorRaw struct { Contract *AddressTransactor // Generic write-only contract binding to access the raw methods on } // NewAddress creates a new instance of Address, bound to a specific deployed contract. func NewAddress(address common.Address, backend bind.ContractBackend) (*Address, error) { contract, err := bindAddress(address, backend, backend, backend) if err != nil { return nil, err } return &Address{AddressCaller: AddressCaller{contract: contract}, AddressTransactor: AddressTransactor{contract: contract}, AddressFilterer: AddressFilterer{contract: contract}}, nil } // NewAddressCaller creates a new read-only instance of Address, bound to a specific deployed contract. func NewAddressCaller(address common.Address, caller bind.ContractCaller) (*AddressCaller, error) { contract, err := bindAddress(address, caller, nil, nil) if err != nil { return nil, err } return &AddressCaller{contract: contract}, nil } // NewAddressTransactor creates a new write-only instance of Address, bound to a specific deployed contract. func NewAddressTransactor(address common.Address, transactor bind.ContractTransactor) (*AddressTransactor, error) { contract, err := bindAddress(address, nil, transactor, nil) if err != nil { return nil, err } return &AddressTransactor{contract: contract}, nil } // NewAddressFilterer creates a new log filterer instance of Address, bound to a specific deployed contract. func NewAddressFilterer(address common.Address, filterer bind.ContractFilterer) (*AddressFilterer, error) { contract, err := bindAddress(address, nil, nil, filterer) if err != nil { return nil, err } return &AddressFilterer{contract: contract}, nil } // bindAddress binds a generic wrapper to an already deployed contract. func bindAddress(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := AddressMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Address *AddressRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Address.Contract.AddressCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Address *AddressRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Address.Contract.AddressTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Address *AddressRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Address.Contract.AddressTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Address *AddressCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Address.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Address *AddressTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Address.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Address *AddressTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Address.Contract.contract.Transact(opts, method, params...) } // AddressUpgradeableMetaData contains all meta data concerning the AddressUpgradeable contract. var AddressUpgradeableMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220074555f9e88c974632499377298db08586245e86b69fefc1e20adf60d4c9b3d664736f6c63430008110033", } // AddressUpgradeableABI is the input ABI used to generate the binding from. // Deprecated: Use AddressUpgradeableMetaData.ABI instead. var AddressUpgradeableABI = AddressUpgradeableMetaData.ABI // AddressUpgradeableBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use AddressUpgradeableMetaData.Bin instead. var AddressUpgradeableBin = AddressUpgradeableMetaData.Bin // DeployAddressUpgradeable deploys a new Ethereum contract, binding an instance of AddressUpgradeable to it. func DeployAddressUpgradeable(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *AddressUpgradeable, error) { parsed, err := AddressUpgradeableMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(AddressUpgradeableBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &AddressUpgradeable{AddressUpgradeableCaller: AddressUpgradeableCaller{contract: contract}, AddressUpgradeableTransactor: AddressUpgradeableTransactor{contract: contract}, AddressUpgradeableFilterer: AddressUpgradeableFilterer{contract: contract}}, nil } // AddressUpgradeable is an auto generated Go binding around an Ethereum contract. type AddressUpgradeable struct { AddressUpgradeableCaller // Read-only binding to the contract AddressUpgradeableTransactor // Write-only binding to the contract AddressUpgradeableFilterer // Log filterer for contract events } // AddressUpgradeableCaller is an auto generated read-only Go binding around an Ethereum contract. type AddressUpgradeableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AddressUpgradeableTransactor is an auto generated write-only Go binding around an Ethereum contract. type AddressUpgradeableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AddressUpgradeableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type AddressUpgradeableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AddressUpgradeableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type AddressUpgradeableSession struct { Contract *AddressUpgradeable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AddressUpgradeableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type AddressUpgradeableCallerSession struct { Contract *AddressUpgradeableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // AddressUpgradeableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type AddressUpgradeableTransactorSession struct { Contract *AddressUpgradeableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AddressUpgradeableRaw is an auto generated low-level Go binding around an Ethereum contract. type AddressUpgradeableRaw struct { Contract *AddressUpgradeable // Generic contract binding to access the raw methods on } // AddressUpgradeableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type AddressUpgradeableCallerRaw struct { Contract *AddressUpgradeableCaller // Generic read-only contract binding to access the raw methods on } // AddressUpgradeableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type AddressUpgradeableTransactorRaw struct { Contract *AddressUpgradeableTransactor // Generic write-only contract binding to access the raw methods on } // NewAddressUpgradeable creates a new instance of AddressUpgradeable, bound to a specific deployed contract. func NewAddressUpgradeable(address common.Address, backend bind.ContractBackend) (*AddressUpgradeable, error) { contract, err := bindAddressUpgradeable(address, backend, backend, backend) if err != nil { return nil, err } return &AddressUpgradeable{AddressUpgradeableCaller: AddressUpgradeableCaller{contract: contract}, AddressUpgradeableTransactor: AddressUpgradeableTransactor{contract: contract}, AddressUpgradeableFilterer: AddressUpgradeableFilterer{contract: contract}}, nil } // NewAddressUpgradeableCaller creates a new read-only instance of AddressUpgradeable, bound to a specific deployed contract. func NewAddressUpgradeableCaller(address common.Address, caller bind.ContractCaller) (*AddressUpgradeableCaller, error) { contract, err := bindAddressUpgradeable(address, caller, nil, nil) if err != nil { return nil, err } return &AddressUpgradeableCaller{contract: contract}, nil } // NewAddressUpgradeableTransactor creates a new write-only instance of AddressUpgradeable, bound to a specific deployed contract. func NewAddressUpgradeableTransactor(address common.Address, transactor bind.ContractTransactor) (*AddressUpgradeableTransactor, error) { contract, err := bindAddressUpgradeable(address, nil, transactor, nil) if err != nil { return nil, err } return &AddressUpgradeableTransactor{contract: contract}, nil } // NewAddressUpgradeableFilterer creates a new log filterer instance of AddressUpgradeable, bound to a specific deployed contract. func NewAddressUpgradeableFilterer(address common.Address, filterer bind.ContractFilterer) (*AddressUpgradeableFilterer, error) { contract, err := bindAddressUpgradeable(address, nil, nil, filterer) if err != nil { return nil, err } return &AddressUpgradeableFilterer{contract: contract}, nil } // bindAddressUpgradeable binds a generic wrapper to an already deployed contract. func bindAddressUpgradeable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := AddressUpgradeableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_AddressUpgradeable *AddressUpgradeableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _AddressUpgradeable.Contract.AddressUpgradeableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_AddressUpgradeable *AddressUpgradeableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _AddressUpgradeable.Contract.AddressUpgradeableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_AddressUpgradeable *AddressUpgradeableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _AddressUpgradeable.Contract.AddressUpgradeableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_AddressUpgradeable *AddressUpgradeableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _AddressUpgradeable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_AddressUpgradeable *AddressUpgradeableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _AddressUpgradeable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_AddressUpgradeable *AddressUpgradeableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _AddressUpgradeable.Contract.contract.Transact(opts, method, params...) } // AgentSecuredMetaData contains all meta data concerning the AgentSecured contract. var AgentSecuredMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"CallerNotAgentManager\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectVersionLength\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"agentManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"agentStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAgent\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inbox\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"agentIndex\",\"type\":\"uint32\"}],\"name\":\"latestDisputeStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumDisputeFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"openedAt\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"resolvedAt\",\"type\":\"uint40\"}],\"internalType\":\"structDisputeStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"localDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Result[]\",\"name\":\"callResults\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"guardIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"openDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"slashedIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rivalIndex\",\"type\":\"uint32\"}],\"name\":\"resolveDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"synapseDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"versionString\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "79ba5097": "acceptOwnership()", "7622f78d": "agentManager()", "28f3fac9": "agentStatus(address)", "2de5aaf7": "getAgent(uint256)", "fb0e722b": "inbox()", "dfadd81a": "latestDisputeStatus(uint32)", "8d3638f4": "localDomain()", "60fc8466": "multicall((bool,bytes)[])", "a2155c34": "openDispute(uint32,uint32)", "8da5cb5b": "owner()", "e30c3978": "pendingOwner()", "715018a6": "renounceOwnership()", "61169218": "resolveDispute(uint32,uint32)", "717b8638": "synapseDomain()", "f2fde38b": "transferOwnership(address)", "54fd4d50": "version()", }, } // AgentSecuredABI is the input ABI used to generate the binding from. // Deprecated: Use AgentSecuredMetaData.ABI instead. var AgentSecuredABI = AgentSecuredMetaData.ABI // Deprecated: Use AgentSecuredMetaData.Sigs instead. // AgentSecuredFuncSigs maps the 4-byte function signature to its string representation. var AgentSecuredFuncSigs = AgentSecuredMetaData.Sigs // AgentSecured is an auto generated Go binding around an Ethereum contract. type AgentSecured struct { AgentSecuredCaller // Read-only binding to the contract AgentSecuredTransactor // Write-only binding to the contract AgentSecuredFilterer // Log filterer for contract events } // AgentSecuredCaller is an auto generated read-only Go binding around an Ethereum contract. type AgentSecuredCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AgentSecuredTransactor is an auto generated write-only Go binding around an Ethereum contract. type AgentSecuredTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AgentSecuredFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type AgentSecuredFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AgentSecuredSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type AgentSecuredSession struct { Contract *AgentSecured // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AgentSecuredCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type AgentSecuredCallerSession struct { Contract *AgentSecuredCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // AgentSecuredTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type AgentSecuredTransactorSession struct { Contract *AgentSecuredTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AgentSecuredRaw is an auto generated low-level Go binding around an Ethereum contract. type AgentSecuredRaw struct { Contract *AgentSecured // Generic contract binding to access the raw methods on } // AgentSecuredCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type AgentSecuredCallerRaw struct { Contract *AgentSecuredCaller // Generic read-only contract binding to access the raw methods on } // AgentSecuredTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type AgentSecuredTransactorRaw struct { Contract *AgentSecuredTransactor // Generic write-only contract binding to access the raw methods on } // NewAgentSecured creates a new instance of AgentSecured, bound to a specific deployed contract. func NewAgentSecured(address common.Address, backend bind.ContractBackend) (*AgentSecured, error) { contract, err := bindAgentSecured(address, backend, backend, backend) if err != nil { return nil, err } return &AgentSecured{AgentSecuredCaller: AgentSecuredCaller{contract: contract}, AgentSecuredTransactor: AgentSecuredTransactor{contract: contract}, AgentSecuredFilterer: AgentSecuredFilterer{contract: contract}}, nil } // NewAgentSecuredCaller creates a new read-only instance of AgentSecured, bound to a specific deployed contract. func NewAgentSecuredCaller(address common.Address, caller bind.ContractCaller) (*AgentSecuredCaller, error) { contract, err := bindAgentSecured(address, caller, nil, nil) if err != nil { return nil, err } return &AgentSecuredCaller{contract: contract}, nil } // NewAgentSecuredTransactor creates a new write-only instance of AgentSecured, bound to a specific deployed contract. func NewAgentSecuredTransactor(address common.Address, transactor bind.ContractTransactor) (*AgentSecuredTransactor, error) { contract, err := bindAgentSecured(address, nil, transactor, nil) if err != nil { return nil, err } return &AgentSecuredTransactor{contract: contract}, nil } // NewAgentSecuredFilterer creates a new log filterer instance of AgentSecured, bound to a specific deployed contract. func NewAgentSecuredFilterer(address common.Address, filterer bind.ContractFilterer) (*AgentSecuredFilterer, error) { contract, err := bindAgentSecured(address, nil, nil, filterer) if err != nil { return nil, err } return &AgentSecuredFilterer{contract: contract}, nil } // bindAgentSecured binds a generic wrapper to an already deployed contract. func bindAgentSecured(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := AgentSecuredMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_AgentSecured *AgentSecuredRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _AgentSecured.Contract.AgentSecuredCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_AgentSecured *AgentSecuredRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _AgentSecured.Contract.AgentSecuredTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_AgentSecured *AgentSecuredRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _AgentSecured.Contract.AgentSecuredTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_AgentSecured *AgentSecuredCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _AgentSecured.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_AgentSecured *AgentSecuredTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _AgentSecured.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_AgentSecured *AgentSecuredTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _AgentSecured.Contract.contract.Transact(opts, method, params...) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_AgentSecured *AgentSecuredCaller) AgentManager(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "agentManager") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_AgentSecured *AgentSecuredSession) AgentManager() (common.Address, error) { return _AgentSecured.Contract.AgentManager(&_AgentSecured.CallOpts) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_AgentSecured *AgentSecuredCallerSession) AgentManager() (common.Address, error) { return _AgentSecured.Contract.AgentManager(&_AgentSecured.CallOpts) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_AgentSecured *AgentSecuredCaller) AgentStatus(opts *bind.CallOpts, agent common.Address) (AgentStatus, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "agentStatus", agent) if err != nil { return *new(AgentStatus), err } out0 := *abi.ConvertType(out[0], new(AgentStatus)).(*AgentStatus) return out0, err } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_AgentSecured *AgentSecuredSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _AgentSecured.Contract.AgentStatus(&_AgentSecured.CallOpts, agent) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_AgentSecured *AgentSecuredCallerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _AgentSecured.Contract.AgentStatus(&_AgentSecured.CallOpts, agent) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_AgentSecured *AgentSecuredCaller) GetAgent(opts *bind.CallOpts, index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "getAgent", index) outstruct := new(struct { Agent common.Address Status AgentStatus }) if err != nil { return *outstruct, err } outstruct.Agent = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Status = *abi.ConvertType(out[1], new(AgentStatus)).(*AgentStatus) return *outstruct, err } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_AgentSecured *AgentSecuredSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _AgentSecured.Contract.GetAgent(&_AgentSecured.CallOpts, index) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_AgentSecured *AgentSecuredCallerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _AgentSecured.Contract.GetAgent(&_AgentSecured.CallOpts, index) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_AgentSecured *AgentSecuredCaller) Inbox(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "inbox") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_AgentSecured *AgentSecuredSession) Inbox() (common.Address, error) { return _AgentSecured.Contract.Inbox(&_AgentSecured.CallOpts) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_AgentSecured *AgentSecuredCallerSession) Inbox() (common.Address, error) { return _AgentSecured.Contract.Inbox(&_AgentSecured.CallOpts) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_AgentSecured *AgentSecuredCaller) LatestDisputeStatus(opts *bind.CallOpts, agentIndex uint32) (DisputeStatus, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "latestDisputeStatus", agentIndex) if err != nil { return *new(DisputeStatus), err } out0 := *abi.ConvertType(out[0], new(DisputeStatus)).(*DisputeStatus) return out0, err } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_AgentSecured *AgentSecuredSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _AgentSecured.Contract.LatestDisputeStatus(&_AgentSecured.CallOpts, agentIndex) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_AgentSecured *AgentSecuredCallerSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _AgentSecured.Contract.LatestDisputeStatus(&_AgentSecured.CallOpts, agentIndex) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_AgentSecured *AgentSecuredCaller) LocalDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "localDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_AgentSecured *AgentSecuredSession) LocalDomain() (uint32, error) { return _AgentSecured.Contract.LocalDomain(&_AgentSecured.CallOpts) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_AgentSecured *AgentSecuredCallerSession) LocalDomain() (uint32, error) { return _AgentSecured.Contract.LocalDomain(&_AgentSecured.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_AgentSecured *AgentSecuredCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_AgentSecured *AgentSecuredSession) Owner() (common.Address, error) { return _AgentSecured.Contract.Owner(&_AgentSecured.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_AgentSecured *AgentSecuredCallerSession) Owner() (common.Address, error) { return _AgentSecured.Contract.Owner(&_AgentSecured.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_AgentSecured *AgentSecuredCaller) PendingOwner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "pendingOwner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_AgentSecured *AgentSecuredSession) PendingOwner() (common.Address, error) { return _AgentSecured.Contract.PendingOwner(&_AgentSecured.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_AgentSecured *AgentSecuredCallerSession) PendingOwner() (common.Address, error) { return _AgentSecured.Contract.PendingOwner(&_AgentSecured.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_AgentSecured *AgentSecuredCaller) SynapseDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "synapseDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_AgentSecured *AgentSecuredSession) SynapseDomain() (uint32, error) { return _AgentSecured.Contract.SynapseDomain(&_AgentSecured.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_AgentSecured *AgentSecuredCallerSession) SynapseDomain() (uint32, error) { return _AgentSecured.Contract.SynapseDomain(&_AgentSecured.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_AgentSecured *AgentSecuredCaller) Version(opts *bind.CallOpts) (string, error) { var out []interface{} err := _AgentSecured.contract.Call(opts, &out, "version") if err != nil { return *new(string), err } out0 := *abi.ConvertType(out[0], new(string)).(*string) return out0, err } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_AgentSecured *AgentSecuredSession) Version() (string, error) { return _AgentSecured.Contract.Version(&_AgentSecured.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_AgentSecured *AgentSecuredCallerSession) Version() (string, error) { return _AgentSecured.Contract.Version(&_AgentSecured.CallOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_AgentSecured *AgentSecuredTransactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _AgentSecured.contract.Transact(opts, "acceptOwnership") } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_AgentSecured *AgentSecuredSession) AcceptOwnership() (*types.Transaction, error) { return _AgentSecured.Contract.AcceptOwnership(&_AgentSecured.TransactOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_AgentSecured *AgentSecuredTransactorSession) AcceptOwnership() (*types.Transaction, error) { return _AgentSecured.Contract.AcceptOwnership(&_AgentSecured.TransactOpts) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_AgentSecured *AgentSecuredTransactor) Multicall(opts *bind.TransactOpts, calls []MultiCallableCall) (*types.Transaction, error) { return _AgentSecured.contract.Transact(opts, "multicall", calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_AgentSecured *AgentSecuredSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _AgentSecured.Contract.Multicall(&_AgentSecured.TransactOpts, calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_AgentSecured *AgentSecuredTransactorSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _AgentSecured.Contract.Multicall(&_AgentSecured.TransactOpts, calls) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_AgentSecured *AgentSecuredTransactor) OpenDispute(opts *bind.TransactOpts, guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _AgentSecured.contract.Transact(opts, "openDispute", guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_AgentSecured *AgentSecuredSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _AgentSecured.Contract.OpenDispute(&_AgentSecured.TransactOpts, guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_AgentSecured *AgentSecuredTransactorSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _AgentSecured.Contract.OpenDispute(&_AgentSecured.TransactOpts, guardIndex, notaryIndex) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_AgentSecured *AgentSecuredTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _AgentSecured.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_AgentSecured *AgentSecuredSession) RenounceOwnership() (*types.Transaction, error) { return _AgentSecured.Contract.RenounceOwnership(&_AgentSecured.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_AgentSecured *AgentSecuredTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _AgentSecured.Contract.RenounceOwnership(&_AgentSecured.TransactOpts) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_AgentSecured *AgentSecuredTransactor) ResolveDispute(opts *bind.TransactOpts, slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _AgentSecured.contract.Transact(opts, "resolveDispute", slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_AgentSecured *AgentSecuredSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _AgentSecured.Contract.ResolveDispute(&_AgentSecured.TransactOpts, slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_AgentSecured *AgentSecuredTransactorSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _AgentSecured.Contract.ResolveDispute(&_AgentSecured.TransactOpts, slashedIndex, rivalIndex) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_AgentSecured *AgentSecuredTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _AgentSecured.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_AgentSecured *AgentSecuredSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _AgentSecured.Contract.TransferOwnership(&_AgentSecured.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_AgentSecured *AgentSecuredTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _AgentSecured.Contract.TransferOwnership(&_AgentSecured.TransactOpts, newOwner) } // AgentSecuredInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the AgentSecured contract. type AgentSecuredInitializedIterator struct { Event *AgentSecuredInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *AgentSecuredInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(AgentSecuredInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(AgentSecuredInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *AgentSecuredInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *AgentSecuredInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // AgentSecuredInitialized represents a Initialized event raised by the AgentSecured contract. type AgentSecuredInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_AgentSecured *AgentSecuredFilterer) FilterInitialized(opts *bind.FilterOpts) (*AgentSecuredInitializedIterator, error) { logs, sub, err := _AgentSecured.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &AgentSecuredInitializedIterator{contract: _AgentSecured.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_AgentSecured *AgentSecuredFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *AgentSecuredInitialized) (event.Subscription, error) { logs, sub, err := _AgentSecured.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(AgentSecuredInitialized) if err := _AgentSecured.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_AgentSecured *AgentSecuredFilterer) ParseInitialized(log types.Log) (*AgentSecuredInitialized, error) { event := new(AgentSecuredInitialized) if err := _AgentSecured.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // AgentSecuredOwnershipTransferStartedIterator is returned from FilterOwnershipTransferStarted and is used to iterate over the raw logs and unpacked data for OwnershipTransferStarted events raised by the AgentSecured contract. type AgentSecuredOwnershipTransferStartedIterator struct { Event *AgentSecuredOwnershipTransferStarted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *AgentSecuredOwnershipTransferStartedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(AgentSecuredOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(AgentSecuredOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *AgentSecuredOwnershipTransferStartedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *AgentSecuredOwnershipTransferStartedIterator) Close() error { it.sub.Unsubscribe() return nil } // AgentSecuredOwnershipTransferStarted represents a OwnershipTransferStarted event raised by the AgentSecured contract. type AgentSecuredOwnershipTransferStarted struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferStarted is a free log retrieval operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_AgentSecured *AgentSecuredFilterer) FilterOwnershipTransferStarted(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*AgentSecuredOwnershipTransferStartedIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _AgentSecured.contract.FilterLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &AgentSecuredOwnershipTransferStartedIterator{contract: _AgentSecured.contract, event: "OwnershipTransferStarted", logs: logs, sub: sub}, nil } // WatchOwnershipTransferStarted is a free log subscription operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_AgentSecured *AgentSecuredFilterer) WatchOwnershipTransferStarted(opts *bind.WatchOpts, sink chan<- *AgentSecuredOwnershipTransferStarted, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _AgentSecured.contract.WatchLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(AgentSecuredOwnershipTransferStarted) if err := _AgentSecured.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferStarted is a log parse operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_AgentSecured *AgentSecuredFilterer) ParseOwnershipTransferStarted(log types.Log) (*AgentSecuredOwnershipTransferStarted, error) { event := new(AgentSecuredOwnershipTransferStarted) if err := _AgentSecured.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return nil, err } event.Raw = log return event, nil } // AgentSecuredOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the AgentSecured contract. type AgentSecuredOwnershipTransferredIterator struct { Event *AgentSecuredOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *AgentSecuredOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(AgentSecuredOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(AgentSecuredOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *AgentSecuredOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *AgentSecuredOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // AgentSecuredOwnershipTransferred represents a OwnershipTransferred event raised by the AgentSecured contract. type AgentSecuredOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_AgentSecured *AgentSecuredFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*AgentSecuredOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _AgentSecured.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &AgentSecuredOwnershipTransferredIterator{contract: _AgentSecured.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_AgentSecured *AgentSecuredFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *AgentSecuredOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _AgentSecured.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(AgentSecuredOwnershipTransferred) if err := _AgentSecured.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_AgentSecured *AgentSecuredFilterer) ParseOwnershipTransferred(log types.Log) (*AgentSecuredOwnershipTransferred, error) { event := new(AgentSecuredOwnershipTransferred) if err := _AgentSecured.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // AttestationLibMetaData contains all meta data concerning the AttestationLib contract. var AttestationLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208d8842eee705e0b318530934a6a4bf023ad014eb6fca63ee4a6070d316a0bd7c64736f6c63430008110033", } // AttestationLibABI is the input ABI used to generate the binding from. // Deprecated: Use AttestationLibMetaData.ABI instead. var AttestationLibABI = AttestationLibMetaData.ABI // AttestationLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use AttestationLibMetaData.Bin instead. var AttestationLibBin = AttestationLibMetaData.Bin // DeployAttestationLib deploys a new Ethereum contract, binding an instance of AttestationLib to it. func DeployAttestationLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *AttestationLib, error) { parsed, err := AttestationLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(AttestationLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &AttestationLib{AttestationLibCaller: AttestationLibCaller{contract: contract}, AttestationLibTransactor: AttestationLibTransactor{contract: contract}, AttestationLibFilterer: AttestationLibFilterer{contract: contract}}, nil } // AttestationLib is an auto generated Go binding around an Ethereum contract. type AttestationLib struct { AttestationLibCaller // Read-only binding to the contract AttestationLibTransactor // Write-only binding to the contract AttestationLibFilterer // Log filterer for contract events } // AttestationLibCaller is an auto generated read-only Go binding around an Ethereum contract. type AttestationLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AttestationLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type AttestationLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AttestationLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type AttestationLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // AttestationLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type AttestationLibSession struct { Contract *AttestationLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AttestationLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type AttestationLibCallerSession struct { Contract *AttestationLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // AttestationLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type AttestationLibTransactorSession struct { Contract *AttestationLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // AttestationLibRaw is an auto generated low-level Go binding around an Ethereum contract. type AttestationLibRaw struct { Contract *AttestationLib // Generic contract binding to access the raw methods on } // AttestationLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type AttestationLibCallerRaw struct { Contract *AttestationLibCaller // Generic read-only contract binding to access the raw methods on } // AttestationLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type AttestationLibTransactorRaw struct { Contract *AttestationLibTransactor // Generic write-only contract binding to access the raw methods on } // NewAttestationLib creates a new instance of AttestationLib, bound to a specific deployed contract. func NewAttestationLib(address common.Address, backend bind.ContractBackend) (*AttestationLib, error) { contract, err := bindAttestationLib(address, backend, backend, backend) if err != nil { return nil, err } return &AttestationLib{AttestationLibCaller: AttestationLibCaller{contract: contract}, AttestationLibTransactor: AttestationLibTransactor{contract: contract}, AttestationLibFilterer: AttestationLibFilterer{contract: contract}}, nil } // NewAttestationLibCaller creates a new read-only instance of AttestationLib, bound to a specific deployed contract. func NewAttestationLibCaller(address common.Address, caller bind.ContractCaller) (*AttestationLibCaller, error) { contract, err := bindAttestationLib(address, caller, nil, nil) if err != nil { return nil, err } return &AttestationLibCaller{contract: contract}, nil } // NewAttestationLibTransactor creates a new write-only instance of AttestationLib, bound to a specific deployed contract. func NewAttestationLibTransactor(address common.Address, transactor bind.ContractTransactor) (*AttestationLibTransactor, error) { contract, err := bindAttestationLib(address, nil, transactor, nil) if err != nil { return nil, err } return &AttestationLibTransactor{contract: contract}, nil } // NewAttestationLibFilterer creates a new log filterer instance of AttestationLib, bound to a specific deployed contract. func NewAttestationLibFilterer(address common.Address, filterer bind.ContractFilterer) (*AttestationLibFilterer, error) { contract, err := bindAttestationLib(address, nil, nil, filterer) if err != nil { return nil, err } return &AttestationLibFilterer{contract: contract}, nil } // bindAttestationLib binds a generic wrapper to an already deployed contract. func bindAttestationLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := AttestationLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_AttestationLib *AttestationLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _AttestationLib.Contract.AttestationLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_AttestationLib *AttestationLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _AttestationLib.Contract.AttestationLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_AttestationLib *AttestationLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _AttestationLib.Contract.AttestationLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_AttestationLib *AttestationLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _AttestationLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_AttestationLib *AttestationLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _AttestationLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_AttestationLib *AttestationLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _AttestationLib.Contract.contract.Transact(opts, method, params...) } // BaseMessageLibMetaData contains all meta data concerning the BaseMessageLib contract. var BaseMessageLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122012440a8d6cbe4d7c10d5271d6b0ef50ccd5af2f3b0ab96878a44472951f698e364736f6c63430008110033", } // BaseMessageLibABI is the input ABI used to generate the binding from. // Deprecated: Use BaseMessageLibMetaData.ABI instead. var BaseMessageLibABI = BaseMessageLibMetaData.ABI // BaseMessageLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use BaseMessageLibMetaData.Bin instead. var BaseMessageLibBin = BaseMessageLibMetaData.Bin // DeployBaseMessageLib deploys a new Ethereum contract, binding an instance of BaseMessageLib to it. func DeployBaseMessageLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *BaseMessageLib, error) { parsed, err := BaseMessageLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(BaseMessageLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &BaseMessageLib{BaseMessageLibCaller: BaseMessageLibCaller{contract: contract}, BaseMessageLibTransactor: BaseMessageLibTransactor{contract: contract}, BaseMessageLibFilterer: BaseMessageLibFilterer{contract: contract}}, nil } // BaseMessageLib is an auto generated Go binding around an Ethereum contract. type BaseMessageLib struct { BaseMessageLibCaller // Read-only binding to the contract BaseMessageLibTransactor // Write-only binding to the contract BaseMessageLibFilterer // Log filterer for contract events } // BaseMessageLibCaller is an auto generated read-only Go binding around an Ethereum contract. type BaseMessageLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // BaseMessageLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type BaseMessageLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // BaseMessageLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type BaseMessageLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // BaseMessageLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type BaseMessageLibSession struct { Contract *BaseMessageLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // BaseMessageLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type BaseMessageLibCallerSession struct { Contract *BaseMessageLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // BaseMessageLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type BaseMessageLibTransactorSession struct { Contract *BaseMessageLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // BaseMessageLibRaw is an auto generated low-level Go binding around an Ethereum contract. type BaseMessageLibRaw struct { Contract *BaseMessageLib // Generic contract binding to access the raw methods on } // BaseMessageLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type BaseMessageLibCallerRaw struct { Contract *BaseMessageLibCaller // Generic read-only contract binding to access the raw methods on } // BaseMessageLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type BaseMessageLibTransactorRaw struct { Contract *BaseMessageLibTransactor // Generic write-only contract binding to access the raw methods on } // NewBaseMessageLib creates a new instance of BaseMessageLib, bound to a specific deployed contract. func NewBaseMessageLib(address common.Address, backend bind.ContractBackend) (*BaseMessageLib, error) { contract, err := bindBaseMessageLib(address, backend, backend, backend) if err != nil { return nil, err } return &BaseMessageLib{BaseMessageLibCaller: BaseMessageLibCaller{contract: contract}, BaseMessageLibTransactor: BaseMessageLibTransactor{contract: contract}, BaseMessageLibFilterer: BaseMessageLibFilterer{contract: contract}}, nil } // NewBaseMessageLibCaller creates a new read-only instance of BaseMessageLib, bound to a specific deployed contract. func NewBaseMessageLibCaller(address common.Address, caller bind.ContractCaller) (*BaseMessageLibCaller, error) { contract, err := bindBaseMessageLib(address, caller, nil, nil) if err != nil { return nil, err } return &BaseMessageLibCaller{contract: contract}, nil } // NewBaseMessageLibTransactor creates a new write-only instance of BaseMessageLib, bound to a specific deployed contract. func NewBaseMessageLibTransactor(address common.Address, transactor bind.ContractTransactor) (*BaseMessageLibTransactor, error) { contract, err := bindBaseMessageLib(address, nil, transactor, nil) if err != nil { return nil, err } return &BaseMessageLibTransactor{contract: contract}, nil } // NewBaseMessageLibFilterer creates a new log filterer instance of BaseMessageLib, bound to a specific deployed contract. func NewBaseMessageLibFilterer(address common.Address, filterer bind.ContractFilterer) (*BaseMessageLibFilterer, error) { contract, err := bindBaseMessageLib(address, nil, nil, filterer) if err != nil { return nil, err } return &BaseMessageLibFilterer{contract: contract}, nil } // bindBaseMessageLib binds a generic wrapper to an already deployed contract. func bindBaseMessageLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := BaseMessageLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_BaseMessageLib *BaseMessageLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _BaseMessageLib.Contract.BaseMessageLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_BaseMessageLib *BaseMessageLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _BaseMessageLib.Contract.BaseMessageLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_BaseMessageLib *BaseMessageLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _BaseMessageLib.Contract.BaseMessageLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_BaseMessageLib *BaseMessageLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _BaseMessageLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_BaseMessageLib *BaseMessageLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _BaseMessageLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_BaseMessageLib *BaseMessageLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _BaseMessageLib.Contract.contract.Transact(opts, method, params...) } // ByteStringMetaData contains all meta data concerning the ByteString contract. var ByteStringMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212209b6c5507b7e61d0fe84cb948f32424de54836f5223e678dcf53a2ec0c05b646064736f6c63430008110033", } // ByteStringABI is the input ABI used to generate the binding from. // Deprecated: Use ByteStringMetaData.ABI instead. var ByteStringABI = ByteStringMetaData.ABI // ByteStringBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use ByteStringMetaData.Bin instead. var ByteStringBin = ByteStringMetaData.Bin // DeployByteString deploys a new Ethereum contract, binding an instance of ByteString to it. func DeployByteString(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ByteString, error) { parsed, err := ByteStringMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(ByteStringBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &ByteString{ByteStringCaller: ByteStringCaller{contract: contract}, ByteStringTransactor: ByteStringTransactor{contract: contract}, ByteStringFilterer: ByteStringFilterer{contract: contract}}, nil } // ByteString is an auto generated Go binding around an Ethereum contract. type ByteString struct { ByteStringCaller // Read-only binding to the contract ByteStringTransactor // Write-only binding to the contract ByteStringFilterer // Log filterer for contract events } // ByteStringCaller is an auto generated read-only Go binding around an Ethereum contract. type ByteStringCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ByteStringTransactor is an auto generated write-only Go binding around an Ethereum contract. type ByteStringTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ByteStringFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ByteStringFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ByteStringSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ByteStringSession struct { Contract *ByteString // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ByteStringCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ByteStringCallerSession struct { Contract *ByteStringCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ByteStringTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ByteStringTransactorSession struct { Contract *ByteStringTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ByteStringRaw is an auto generated low-level Go binding around an Ethereum contract. type ByteStringRaw struct { Contract *ByteString // Generic contract binding to access the raw methods on } // ByteStringCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ByteStringCallerRaw struct { Contract *ByteStringCaller // Generic read-only contract binding to access the raw methods on } // ByteStringTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ByteStringTransactorRaw struct { Contract *ByteStringTransactor // Generic write-only contract binding to access the raw methods on } // NewByteString creates a new instance of ByteString, bound to a specific deployed contract. func NewByteString(address common.Address, backend bind.ContractBackend) (*ByteString, error) { contract, err := bindByteString(address, backend, backend, backend) if err != nil { return nil, err } return &ByteString{ByteStringCaller: ByteStringCaller{contract: contract}, ByteStringTransactor: ByteStringTransactor{contract: contract}, ByteStringFilterer: ByteStringFilterer{contract: contract}}, nil } // NewByteStringCaller creates a new read-only instance of ByteString, bound to a specific deployed contract. func NewByteStringCaller(address common.Address, caller bind.ContractCaller) (*ByteStringCaller, error) { contract, err := bindByteString(address, caller, nil, nil) if err != nil { return nil, err } return &ByteStringCaller{contract: contract}, nil } // NewByteStringTransactor creates a new write-only instance of ByteString, bound to a specific deployed contract. func NewByteStringTransactor(address common.Address, transactor bind.ContractTransactor) (*ByteStringTransactor, error) { contract, err := bindByteString(address, nil, transactor, nil) if err != nil { return nil, err } return &ByteStringTransactor{contract: contract}, nil } // NewByteStringFilterer creates a new log filterer instance of ByteString, bound to a specific deployed contract. func NewByteStringFilterer(address common.Address, filterer bind.ContractFilterer) (*ByteStringFilterer, error) { contract, err := bindByteString(address, nil, nil, filterer) if err != nil { return nil, err } return &ByteStringFilterer{contract: contract}, nil } // bindByteString binds a generic wrapper to an already deployed contract. func bindByteString(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ByteStringMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ByteString *ByteStringRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ByteString.Contract.ByteStringCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ByteString *ByteStringRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ByteString.Contract.ByteStringTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ByteString *ByteStringRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ByteString.Contract.ByteStringTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ByteString *ByteStringCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ByteString.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ByteString *ByteStringTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ByteString.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ByteString *ByteStringTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ByteString.Contract.contract.Transact(opts, method, params...) } // ChainContextMetaData contains all meta data concerning the ChainContext contract. var ChainContextMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220157983c9060d3e1c4a729e37758c0dec5535c211a5ea41f96ff77bd547d5a14464736f6c63430008110033", } // ChainContextABI is the input ABI used to generate the binding from. // Deprecated: Use ChainContextMetaData.ABI instead. var ChainContextABI = ChainContextMetaData.ABI // ChainContextBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use ChainContextMetaData.Bin instead. var ChainContextBin = ChainContextMetaData.Bin // DeployChainContext deploys a new Ethereum contract, binding an instance of ChainContext to it. func DeployChainContext(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ChainContext, error) { parsed, err := ChainContextMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(ChainContextBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &ChainContext{ChainContextCaller: ChainContextCaller{contract: contract}, ChainContextTransactor: ChainContextTransactor{contract: contract}, ChainContextFilterer: ChainContextFilterer{contract: contract}}, nil } // ChainContext is an auto generated Go binding around an Ethereum contract. type ChainContext struct { ChainContextCaller // Read-only binding to the contract ChainContextTransactor // Write-only binding to the contract ChainContextFilterer // Log filterer for contract events } // ChainContextCaller is an auto generated read-only Go binding around an Ethereum contract. type ChainContextCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ChainContextTransactor is an auto generated write-only Go binding around an Ethereum contract. type ChainContextTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ChainContextFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ChainContextFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ChainContextSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ChainContextSession struct { Contract *ChainContext // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ChainContextCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ChainContextCallerSession struct { Contract *ChainContextCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ChainContextTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ChainContextTransactorSession struct { Contract *ChainContextTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ChainContextRaw is an auto generated low-level Go binding around an Ethereum contract. type ChainContextRaw struct { Contract *ChainContext // Generic contract binding to access the raw methods on } // ChainContextCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ChainContextCallerRaw struct { Contract *ChainContextCaller // Generic read-only contract binding to access the raw methods on } // ChainContextTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ChainContextTransactorRaw struct { Contract *ChainContextTransactor // Generic write-only contract binding to access the raw methods on } // NewChainContext creates a new instance of ChainContext, bound to a specific deployed contract. func NewChainContext(address common.Address, backend bind.ContractBackend) (*ChainContext, error) { contract, err := bindChainContext(address, backend, backend, backend) if err != nil { return nil, err } return &ChainContext{ChainContextCaller: ChainContextCaller{contract: contract}, ChainContextTransactor: ChainContextTransactor{contract: contract}, ChainContextFilterer: ChainContextFilterer{contract: contract}}, nil } // NewChainContextCaller creates a new read-only instance of ChainContext, bound to a specific deployed contract. func NewChainContextCaller(address common.Address, caller bind.ContractCaller) (*ChainContextCaller, error) { contract, err := bindChainContext(address, caller, nil, nil) if err != nil { return nil, err } return &ChainContextCaller{contract: contract}, nil } // NewChainContextTransactor creates a new write-only instance of ChainContext, bound to a specific deployed contract. func NewChainContextTransactor(address common.Address, transactor bind.ContractTransactor) (*ChainContextTransactor, error) { contract, err := bindChainContext(address, nil, transactor, nil) if err != nil { return nil, err } return &ChainContextTransactor{contract: contract}, nil } // NewChainContextFilterer creates a new log filterer instance of ChainContext, bound to a specific deployed contract. func NewChainContextFilterer(address common.Address, filterer bind.ContractFilterer) (*ChainContextFilterer, error) { contract, err := bindChainContext(address, nil, nil, filterer) if err != nil { return nil, err } return &ChainContextFilterer{contract: contract}, nil } // bindChainContext binds a generic wrapper to an already deployed contract. func bindChainContext(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ChainContextMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ChainContext *ChainContextRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ChainContext.Contract.ChainContextCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ChainContext *ChainContextRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ChainContext.Contract.ChainContextTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ChainContext *ChainContextRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ChainContext.Contract.ChainContextTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ChainContext *ChainContextCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ChainContext.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ChainContext *ChainContextTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ChainContext.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ChainContext *ChainContextTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ChainContext.Contract.contract.Transact(opts, method, params...) } // ContextUpgradeableMetaData contains all meta data concerning the ContextUpgradeable contract. var ContextUpgradeableMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"}]", } // ContextUpgradeableABI is the input ABI used to generate the binding from. // Deprecated: Use ContextUpgradeableMetaData.ABI instead. var ContextUpgradeableABI = ContextUpgradeableMetaData.ABI // ContextUpgradeable is an auto generated Go binding around an Ethereum contract. type ContextUpgradeable struct { ContextUpgradeableCaller // Read-only binding to the contract ContextUpgradeableTransactor // Write-only binding to the contract ContextUpgradeableFilterer // Log filterer for contract events } // ContextUpgradeableCaller is an auto generated read-only Go binding around an Ethereum contract. type ContextUpgradeableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ContextUpgradeableTransactor is an auto generated write-only Go binding around an Ethereum contract. type ContextUpgradeableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ContextUpgradeableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ContextUpgradeableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ContextUpgradeableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ContextUpgradeableSession struct { Contract *ContextUpgradeable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ContextUpgradeableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ContextUpgradeableCallerSession struct { Contract *ContextUpgradeableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ContextUpgradeableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ContextUpgradeableTransactorSession struct { Contract *ContextUpgradeableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ContextUpgradeableRaw is an auto generated low-level Go binding around an Ethereum contract. type ContextUpgradeableRaw struct { Contract *ContextUpgradeable // Generic contract binding to access the raw methods on } // ContextUpgradeableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ContextUpgradeableCallerRaw struct { Contract *ContextUpgradeableCaller // Generic read-only contract binding to access the raw methods on } // ContextUpgradeableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ContextUpgradeableTransactorRaw struct { Contract *ContextUpgradeableTransactor // Generic write-only contract binding to access the raw methods on } // NewContextUpgradeable creates a new instance of ContextUpgradeable, bound to a specific deployed contract. func NewContextUpgradeable(address common.Address, backend bind.ContractBackend) (*ContextUpgradeable, error) { contract, err := bindContextUpgradeable(address, backend, backend, backend) if err != nil { return nil, err } return &ContextUpgradeable{ContextUpgradeableCaller: ContextUpgradeableCaller{contract: contract}, ContextUpgradeableTransactor: ContextUpgradeableTransactor{contract: contract}, ContextUpgradeableFilterer: ContextUpgradeableFilterer{contract: contract}}, nil } // NewContextUpgradeableCaller creates a new read-only instance of ContextUpgradeable, bound to a specific deployed contract. func NewContextUpgradeableCaller(address common.Address, caller bind.ContractCaller) (*ContextUpgradeableCaller, error) { contract, err := bindContextUpgradeable(address, caller, nil, nil) if err != nil { return nil, err } return &ContextUpgradeableCaller{contract: contract}, nil } // NewContextUpgradeableTransactor creates a new write-only instance of ContextUpgradeable, bound to a specific deployed contract. func NewContextUpgradeableTransactor(address common.Address, transactor bind.ContractTransactor) (*ContextUpgradeableTransactor, error) { contract, err := bindContextUpgradeable(address, nil, transactor, nil) if err != nil { return nil, err } return &ContextUpgradeableTransactor{contract: contract}, nil } // NewContextUpgradeableFilterer creates a new log filterer instance of ContextUpgradeable, bound to a specific deployed contract. func NewContextUpgradeableFilterer(address common.Address, filterer bind.ContractFilterer) (*ContextUpgradeableFilterer, error) { contract, err := bindContextUpgradeable(address, nil, nil, filterer) if err != nil { return nil, err } return &ContextUpgradeableFilterer{contract: contract}, nil } // bindContextUpgradeable binds a generic wrapper to an already deployed contract. func bindContextUpgradeable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ContextUpgradeableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ContextUpgradeable *ContextUpgradeableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ContextUpgradeable.Contract.ContextUpgradeableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ContextUpgradeable *ContextUpgradeableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ContextUpgradeable.Contract.ContextUpgradeableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ContextUpgradeable *ContextUpgradeableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ContextUpgradeable.Contract.ContextUpgradeableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ContextUpgradeable *ContextUpgradeableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ContextUpgradeable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ContextUpgradeable *ContextUpgradeableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ContextUpgradeable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ContextUpgradeable *ContextUpgradeableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ContextUpgradeable.Contract.contract.Transact(opts, method, params...) } // ContextUpgradeableInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the ContextUpgradeable contract. type ContextUpgradeableInitializedIterator struct { Event *ContextUpgradeableInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ContextUpgradeableInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ContextUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ContextUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ContextUpgradeableInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ContextUpgradeableInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // ContextUpgradeableInitialized represents a Initialized event raised by the ContextUpgradeable contract. type ContextUpgradeableInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ContextUpgradeable *ContextUpgradeableFilterer) FilterInitialized(opts *bind.FilterOpts) (*ContextUpgradeableInitializedIterator, error) { logs, sub, err := _ContextUpgradeable.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &ContextUpgradeableInitializedIterator{contract: _ContextUpgradeable.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ContextUpgradeable *ContextUpgradeableFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *ContextUpgradeableInitialized) (event.Subscription, error) { logs, sub, err := _ContextUpgradeable.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ContextUpgradeableInitialized) if err := _ContextUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ContextUpgradeable *ContextUpgradeableFilterer) ParseInitialized(log types.Log) (*ContextUpgradeableInitialized, error) { event := new(ContextUpgradeableInitialized) if err := _ContextUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationMetaData contains all meta data concerning the Destination contract. var DestinationMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"synapseDomain_\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"agentManager_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"inbox_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AlreadyExecuted\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AlreadyFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CallerNotAgentManager\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CallerNotInbox\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DisputeTimeoutNotOver\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DuplicatedSnapshotRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FlagOutOfRange\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GasLimitTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GasSuppliedTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectDestinationDomain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectMagicValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectOriginDomain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectSnapshotRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectVersionLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IndexOutOfRange\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IndexedTooMuch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MessageOptimisticPeriod\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotaryInDispute\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OccupiedMemory\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OutdatedNonce\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PrecompileOutOfGas\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TreeHeightTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnallocatedMemory\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedAttestation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedBaseMessage\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedCallData\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedCallDataPrefix\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedMessage\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedReceipt\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ViewOverrun\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"}],\"name\":\"AgentRootAccepted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint32\",\"name\":\"remoteDomain\",\"type\":\"uint32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"name\":\"Executed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"paddedTips\",\"type\":\"uint256\"}],\"name\":\"TipsRecorded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"sigIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"},{\"internalType\":\"ChainGas[]\",\"name\":\"snapGas\",\"type\":\"uint128[]\"}],\"name\":\"acceptAttestation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"agentManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"agentStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"attestationsAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"destStatus\",\"outputs\":[{\"internalType\":\"uint40\",\"name\":\"snapRootTime\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"agentRootTime\",\"type\":\"uint40\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"msgPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[]\",\"name\":\"originProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"snapProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"gasLimit\",\"type\":\"uint64\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAgent\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAttestation\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"snapRoot\",\"type\":\"bytes32\"}],\"name\":\"getAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"attNonce\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"}],\"name\":\"getGasData\",\"outputs\":[{\"internalType\":\"GasData\",\"name\":\"gasData\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"dataMaturity\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inbox\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"name\":\"isValidReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValid\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"name\":\"lastAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"agentIndex\",\"type\":\"uint32\"}],\"name\":\"latestDisputeStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumDisputeFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"openedAt\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"resolvedAt\",\"type\":\"uint40\"}],\"internalType\":\"structDisputeStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"localDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageReceipt\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageStatus\",\"outputs\":[{\"internalType\":\"enumMessageStatus\",\"name\":\"status\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Result[]\",\"name\":\"callResults\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextAgentRoot\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"guardIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"openDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"passAgentRoot\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"rootPending\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"slashedIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rivalIndex\",\"type\":\"uint32\"}],\"name\":\"resolveDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"synapseDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"versionString\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "39fe2736": "acceptAttestation(uint32,uint256,bytes,bytes32,uint128[])", "79ba5097": "acceptOwnership()", "7622f78d": "agentManager()", "28f3fac9": "agentStatus(address)", "3cf7b120": "attestationsAmount()", "40989152": "destStatus()", "883099bc": "execute(bytes,bytes32[],bytes32[],uint8,uint64)", "2de5aaf7": "getAgent(uint256)", "29be4db2": "getAttestation(uint256)", "4f127567": "getAttestationNonce(bytes32)", "d0dd0675": "getGasData(uint32)", "fb0e722b": "inbox()", "9498bd71": "initialize(bytes32)", "e2f006f7": "isValidReceipt(bytes)", "305b29ee": "lastAttestationNonce(uint32)", "dfadd81a": "latestDisputeStatus(uint32)", "8d3638f4": "localDomain()", "daa74a9e": "messageReceipt(bytes32)", "3c6cf473": "messageStatus(bytes32)", "60fc8466": "multicall((bool,bytes)[])", "55252dd1": "nextAgentRoot()", "a2155c34": "openDispute(uint32,uint32)", "8da5cb5b": "owner()", "a554d1e3": "passAgentRoot()", "e30c3978": "pendingOwner()", "715018a6": "renounceOwnership()", "61169218": "resolveDispute(uint32,uint32)", "717b8638": "synapseDomain()", "f2fde38b": "transferOwnership(address)", "54fd4d50": "version()", }, Bin: "0x6101406040523480156200001257600080fd5b50604051620053ac380380620053ac83398101604081905262000035916200015b565b60408051808201909152600580825264302e302e3360d81b60208301526080528383838383816200006681620001af565b60a081815250505062000083620000b360201b620020171760201c565b63ffffffff90811660c0521660e052506001600160a01b0391821661010052166101205250620001d79350505050565b6000620000cb46620000d060201b6200201e1760201c565b905090565b600063ffffffff8211156200013a5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201526532206269747360d01b606482015260840160405180910390fd5b5090565b80516001600160a01b03811681146200015657600080fd5b919050565b6000806000606084860312156200017157600080fd5b835163ffffffff811681146200018657600080fd5b925062000196602085016200013e565b9150620001a6604085016200013e565b90509250925092565b80516020808301519190811015620001d1576000198160200360031b1b821691505b50919050565b60805160a05160c05160e05161010051610120516150ba620002f26000396000818161059e0152818161087801528181610935015261316001526000818161043d01528181610cda01528181610ed5015281816117ea0152818161190a01528181611ba201528181611d0d015281816120f3015281816121a90152613042015260008181610416015281816107f201528181610c7f0152818161176401528181611b470152818161269e01526130f50152600081816104970152818161081901528181610ca6015281816110b9015281816111310152818161178b01528181611b6e01528181612675015281816127940152818161311c015281816133ce01526134a20152600061039a0152600061037701526150ba6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80637622f78d11610104578063a554d1e3116100a2578063e2f006f711610071578063e2f006f714610562578063e30c397814610575578063f2fde38b14610586578063fb0e722b1461059957600080fd5b8063a554d1e3146104f0578063d0dd0675146104f8578063daa74a9e1461052f578063dfadd81a1461054257600080fd5b80638d3638f4116100de5780638d3638f4146104925780638da5cb5b146104b95780639498bd71146104ca578063a2155c34146104dd57600080fd5b80637622f78d1461043857806379ba509714610477578063883099bc1461047f57600080fd5b8063409891521161017c57806360fc84661161014b57806360fc8466146103d457806361169218146103f4578063715018a614610409578063717b86381461041157600080fd5b806340989152146102dc5780634f1275671461033c57806354fd4d501461036b57806355252dd1146103cc57600080fd5b8063305b29ee116101b8578063305b29ee1461024a57806339fe2736146102865780633c6cf473146102a95780633cf7b120146102c957600080fd5b806328f3fac9146101df57806329be4db2146102085780632de5aaf714610229575b600080fd5b6101f26101ed366004614676565b6105c0565b6040516101ff91906146f7565b60405180910390f35b61021b610216366004614705565b6105ec565b6040516101ff92919061476e565b61023c610237366004614705565b6108fa565b6040516101ff929190614793565b6102716102583660046147c2565b6101616020526000908152604090205463ffffffff1681565b60405163ffffffff90911681526020016101ff565b6102996102943660046148bd565b610928565b60405190151581526020016101ff565b6102bc6102b7366004614705565b610bcd565b6040516101ff91906149e2565b61012f545b6040519081526020016101ff565b610160546103129064ffffffffff80821691650100000000008104909116906a0100000000000000000000900463ffffffff1683565b6040805164ffffffffff948516815293909216602084015263ffffffff16908201526060016101ff565b61027161034a366004614705565b60009081526101306020526040902054640100000000900463ffffffff1690565b604080518082019091527f000000000000000000000000000000000000000000000000000000000000000081527f000000000000000000000000000000000000000000000000000000000000000060208201525b6040516101ff91906149f5565b6102ce610c7b565b6103e76103e2366004614a54565b610d5f565b6040516101ff9190614a96565b610407610402366004614b2a565b610eca565b005b610407610fe6565b6102717f000000000000000000000000000000000000000000000000000000000000000081565b61045f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101ff565b610407610ff0565b61040761048d366004614b63565b611083565b6102717f000000000000000000000000000000000000000000000000000000000000000081565b6033546001600160a01b031661045f565b6104076104d8366004614705565b611648565b6104076104eb366004614b2a565b6118ff565b610299611b43565b61050b6105063660046147c2565b611d7b565b604080516bffffffffffffffffffffffff90931683526020830191909152016101ff565b6103bf61053d366004614705565b611e48565b6105556105503660046147c2565b611ee7565b6040516101ff9190614c2c565b610299610570366004614c67565b611f7b565b6065546001600160a01b031661045f565b610407610594366004614676565b611f8e565b61045f7f000000000000000000000000000000000000000000000000000000000000000081565b60408051606081018252600080825260208201819052918101919091526105e68261209e565b92915050565b61012f546060908190831061062d576040517f1390f2a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061012f848154811061064357610643614c9c565b600091825260208083209091015480835261013082526040808420815160e081018352815463ffffffff8082168352640100000000820481169683019690965264ffffffffff6801000000000000000082048116948301949094526d010000000000000000000000000081048416606083015272010000000000000000000000000000000000008104909516608082015276010000000000000000000000000000000000000000000090940490911660a08401526001015460c08301526101628054919450919291908790811061071c5761071c614c9c565b90600052602060002090600202016040518060400160405290816000820154815260200160018201548152505090506107ee8382602001518460200151856040015186606001516040805160208101969096528581019490945260e09290921b7fffffffff0000000000000000000000000000000000000000000000000000000016606085015260d890811b7fffffffffff000000000000000000000000000000000000000000000000000000908116606486015291901b1660698301528051604e818403018152606e909201905290565b94507f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff16146108f25760c08201516040517fddeffa6600000000000000000000000000000000000000000000000000000000815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ddeffa6690602401600060405180830381865afa1580156108c7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108ef9190810190614ccb565b93505b505050915091565b6040805160608101825260008082526020820181905291810182905261091f8361215e565b91509150915091565b6000336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461098c576040517fdbc2fa8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109958661221c565b156109cc576040517f6893014300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109d586612251565b15610a0c576040517f18989d5300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610a1785612328565b90506000610a248261233b565b63ffffffff808a166000908152610161602052604090205491925090811690821611610a7c576040517f7b7fd2c200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b63ffffffff88811660009081526101616020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000016918316919091179055610acb82898961234d565b6101626040518060400160405280878152602001610ae8856125f0565b905281546001818101845560009384526020808520845160029094020192835590920151910155610b17611b43565b9050610b2481878b612601565b80516101608054602084015160409094015163ffffffff166a0100000000000000000000027fffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffff64ffffffffff95861665010000000000027fffffffffffffffffffffffffffffffffffffffffffff0000000000000000000090931695909416949094171791909116919091179055610bbc858a61274a565b600193505050505b95945050505050565b600081815261012d602090815260408083208151608081018352905463ffffffff80821683526401000000008204169382019390935268010000000000000000830460ff169181019190915269010000000000000000009091046001600160a01b03166060820181905215610c455750600292915050565b600083815261012e60205260409020546001600160a01b031615610c6c5750600192915050565b50600092915050565b50919050565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff1614610cd8575061015f5490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166336cba43c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5a9190614d39565b905090565b6060818067ffffffffffffffff811115610d7b57610d7b6147df565b604051908082528060200260200182016040528015610dc157816020015b604080518082019091526000815260606020820152815260200190600190039081610d995790505b5091503660005b82811015610ec157858582818110610de257610de2614c9c565b9050602002810190610df49190614d52565b91506000848281518110610e0a57610e0a614c9c565b60200260200101519050306001600160a01b0316838060200190610e2e9190614d90565b604051610e3c929190614df5565b600060405180830381855af49150503d8060008114610e77576040519150601f19603f3d011682016040523d82523d6000602084013e610e7c565b606091505b5060208301521515808252833517610eb8577f4d6a23280000000000000000000000000000000000000000000000000000000060005260046000fd5b50600101610dc8565b50505092915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f2c576040517ff79626c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610f36612967565b63ffffffff848116600090815260c960205260409020805464ffffffffff84166601000000000000027fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffff00909116176002179055909150821615610fe15763ffffffff8216600090815260c96020526040902080547fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffff0016660100000000000064ffffffffff8416021790555b505050565b610fee612972565b565b60655433906001600160a01b031681146110775760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b611080816129cc565b50565b61108b6129fd565b600061109688612a56565b905060006110a382612a69565b905060006110b083612a7f565b905063ffffffff7f000000000000000000000000000000000000000000000000000000000000000016602083901c6cffffffffffffffffffffffffff1663ffffffff161461112a576040517fa752c23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b63ffffffff7f000000000000000000000000000000000000000000000000000000000000000016606083901c64ffffffffff1663ffffffff160361119a576040517f3eeb1dd400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600081815261012d60209081526040918290208251608081018452905463ffffffff80821683526401000000008204169282019290925268010000000000000000820460ff1692810192909252690100000000000000000090046001600160a01b0316606082018190521561123b576040517f0dc1019700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061124c84848d8d8d8d8d612b3f565b905060008160a0015164ffffffffff16426112679190614e34565b905063ffffffff85168110156112a9576040517f5e5728e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806112c98870ffffffffffffffffffffffffffffffffff16612db1565b60018111156112da576112da614693565b036113135760006112f26112ed8a612de4565b612df0565b905061130088858c84612e31565b915061130b81612fd1565b925050611329565b61132687846113218b612de4565b612fe2565b90505b845163ffffffff1660000361147e5763ffffffff606088901c81168652608085015116602086015260ff8a166040860152801561136b573360608601526113a3565b600086815261012e6020526040902080547fffffffffffffffffffffffff000000000000000000000000000000000000000016331790555b600086815261012d602090815260409182902087518154928901519389015160608a01516001600160a01b03166901000000000000000000027fffffff0000000000000000000000000000000000000000ffffffffffffffffff60ff9092166801000000000000000002919091167fffffff000000000000000000000000000000000000000000ffffffffffffffff63ffffffff968716640100000000027fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000009096169690931695909517939093171692909217179055611597565b806114b5576040517f589a41b700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360608601908152600087815261012d602090815260409182902088518154928a0151938a015194516001600160a01b03166901000000000000000000027fffffff0000000000000000000000000000000000000000ffffffffffffffffff60ff9096166801000000000000000002959095167fffffff000000000000000000000000000000000000000000ffffffffffffffff63ffffffff958616640100000000027fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090951695909216949094179290921791909116919091179190911790555b6040518115158152869063ffffffff60608a901c16907f39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b9060200160405180910390a36115ef846000015185602001518885896130f1565b61162d5760408051878152602081018490527f22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016910160405180910390a15b505050505050505061163f600160fb55565b50505050505050565b600054610100900460ff16158080156116685750600054600160ff909116105b806116825750303b158015611682575060005460ff166001145b6116f45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161106e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561175257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61175a61320d565b611762613292565b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff16146118985761015f8290556040517f58668176000000000000000000000000000000000000000000000000000000008152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635866817690602401600060405180830381600087803b15801561183657600080fd5b505af115801561184a573d6000803e3d6000fd5b50505050611856612967565b610160805464ffffffffff9290921665010000000000027fffffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffff9092169190911790555b80156118fb57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611961576040517ff79626c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061196b612967565b9050600060405180606001604052806001600281111561198d5761198d614693565b815264ffffffffff84166020808301919091526000604092830181905263ffffffff8816815260c99091522081518154929350839282907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660018360028111156119fa576119fa614693565b0217905550602082810151825460409485015164ffffffffff9081166601000000000000027fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffffff9190931661010002167fffffffffffffffffffffffffffffffffffffffffff00000000000000000000ff909116171790915563ffffffff8516600090815260c990915220815181548392919082907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001836002811115611ac457611ac4614693565b0217905550602082015181546040909301517fffffffffffffffffffffffffffffffffffffffffff00000000000000000000ff90931661010064ffffffffff928316027fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffffff16176601000000000000919093160291909117905550505050565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff1603611b9e5750600090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166336cba43c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c229190614d39565b61015f54909150808203611c395760009250505090565b604080516060810182526101605464ffffffffff80821683526501000000000082041660208301526a0100000000000000000000900463ffffffff1691810182905290611c859061221c565b15611c9657505061015f5550600090565b611ca38160400151612251565b15611cb2576001935050505090565b60208101514290611cc7906201518090614e47565b64ffffffffff161115611cde576001935050505090565b6040517f58668176000000000000000000000000000000000000000000000000000000008152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635866817690602401600060405180830381600087803b158015611d5957600080fd5b505af1158015611d6d573d6000803e3d6000fd5b505050506000935050505090565b63ffffffff818116600090815261016360209081526040808320815160608101835290546bffffffffffffffffffffffff811682526c0100000000000000000000000081049095169281019290925270010000000000000000000000000000000090930464ffffffffff16928101839052909182919015801590611e095750611e07816020015161221c565b155b8015611e1f5750611e1d8160200151612251565b155b15611e425780516040820151909350611e3f9064ffffffffff1642614e34565b91505b50915091565b600081815261012d602090815260408083208151608081018352905463ffffffff80821680845264010000000083049091169483019490945268010000000000000000810460ff169282019290925269010000000000000000009091046001600160a01b03166060808301919091529290919003611ed6575050604080516020810190915260008152919050565b611ee08382613317565b9392505050565b604080516060810182526000808252602082018190529181019190915263ffffffff8216600090815260c96020526040908190208151606081019092528054829060ff166002811115611f3c57611f3c614693565b6002811115611f4d57611f4d614693565b8152905464ffffffffff61010082048116602084015266010000000000009091041660409091015292915050565b60006105e6611f898361348b565b61349e565b611f96612972565b606580546001600160a01b0383167fffffffffffffffffffffffff00000000000000000000000000000000000000009091168117909155611fdf6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6000610d5a465b600063ffffffff82111561209a5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201527f3220626974730000000000000000000000000000000000000000000000000000606482015260840161106e565b5090565b60408051606081018252600080825260208201819052918101919091526040517f28f3fac90000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301527f000000000000000000000000000000000000000000000000000000000000000016906328f3fac990602401606060405180830381865afa15801561213a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e69190614ee8565b604080516060810182526000808252602082018190529181018290526040517f2de5aaf7000000000000000000000000000000000000000000000000000000008152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632de5aaf790602401608060405180830381865afa1580156121f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091f9190614f04565b60008063ffffffff8316600090815260c9602052604090205460ff16600281111561224957612249614693565b141592915050565b63ffffffff8116600090815260c96020526040808220815160608101909252805483929190829060ff16600281111561228c5761228c614693565b600281111561229d5761229d614693565b8152905464ffffffffff61010082048116602084015266010000000000009091041660409091015290506000815160028111156122dc576122dc614693565b146122ea5750600092915050565b806020015164ffffffffff166000036123065750600092915050565b60408101516123189061a8c090614e47565b64ffffffffff1642109392505050565b60006105e661233683613749565b61375c565b60006105e660406004845b919061379d565b6000612358846137be565b60008181526101306020526040902054909150760100000000000000000000000000000000000000000000900464ffffffffff16156123c3576040517fa789712900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040518060e001604052808463ffffffff1681526020016123e38661233b565b63ffffffff1681526020016123f7866137cc565b64ffffffffff16815260200161240c866137db565b64ffffffffff16815260200161242761012f8054905061201e565b63ffffffff16815260200161243a612967565b64ffffffffff90811682526020918201949094526000838152610130825260408082208451815494860151928601516060870151608088015160a08901518b16760100000000000000000000000000000000000000000000027fffffffffff0000000000ffffffffffffffffffffffffffffffffffffffffffff63ffffffff928316720100000000000000000000000000000000000002167fffffffffff000000000000000000ffffffffffffffffffffffffffffffffffff938d166d0100000000000000000000000000027fffffffffffffffffffffffffffff0000000000ffffffffffffffffffffffffff95909d166801000000000000000002949094167fffffffffffffffffffffffffffff00000000000000000000ffffffffffffffff978316640100000000027fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000909a16929095169190911797909717949094169190911797909717919091169590951791909117845560c09091015160019384015561012f8054938401815590527f232da9e50dad2971456a78fb5cd6ff6b75019984d6e918139ce990999420f979909101555050565b60006105e6602080845b91906137ea565b604080516060810182526000808252602082018190529181019190915250604080516060810182526101605464ffffffffff80821683526501000000000082041660208301526a0100000000000000000000900463ffffffff169181019190915261266a612967565b64ffffffffff1681527f000000000000000000000000000000000000000000000000000000000000000063ffffffff9081167f000000000000000000000000000000000000000000000000000000000000000091909116148015906126cd575083155b80156126dc57508261015f5414155b15611ee0576126e9612967565b64ffffffffff16602082015263ffffffff821660408083019190915261015f849055517fc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa39061273b9085815260200190565b60405180910390a19392505050565b815160005b8181101561296157600084828151811061276b5761276b614c9c565b602002602001015190506000612790826fffffffffffffffffffffffffffffffff1690565b90507f000000000000000000000000000000000000000000000000000000000000000063ffffffff168163ffffffff16036127cc57505061294f565b63ffffffff81811660009081526101636020908152604091829020825160608101845290546bffffffffffffffffffffffff8082168084526c0100000000000000000000000083049096168385015270010000000000000000000000000000000090910464ffffffffff1693820193909352929085901c909116908103612856575050505061294f565b6040518060600160405280826bffffffffffffffffffffffff1681526020018863ffffffff168152602001612889612967565b64ffffffffff90811690915263ffffffff9485166000908152610163602090815260409182902084518154928601519590930151909316700100000000000000000000000000000000027fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff949097166c01000000000000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091166bffffffffffffffffffffffff909216919091171791909116939093179092555050505b8061295981614f3a565b91505061274f565b50505050565b6000610d5a426138f4565b6033546001600160a01b03163314610fee5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161106e565b606580547fffffffffffffffffffffffff000000000000000000000000000000000000000016905561108081613971565b600260fb5403612a4f5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161106e565b600260fb55565b60006105e6612a6483613749565b6139db565b60006105e6612a7a82601185612346565b613a1c565b600080612a8b83612a69565b90506000612aab8270ffffffffffffffffffffffffffffffffff16612db1565b6001811115612abc57612abc614693565b03612b0057611ee0612ae78270ffffffffffffffffffffffffffffffffff1660009081526020902090565b612afb612af66112ed87612de4565b613a60565b613a86565b611ee0612b268270ffffffffffffffffffffffffffffffffff1660009081526020902090565b612afb612b3a612b3587612de4565b613ad2565b613b13565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c08101919091526000612bdc600160408b901c68ffffffffffffffffff16612b999190614f72565b63ffffffff168989898080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525060209250613b23915050565b90506000612c2b8260608c901c64ffffffffff168888808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508a9250613bcb915050565b600081815261013060209081526040808320815160e081018352815463ffffffff8082168352640100000000820481169583019590955264ffffffffff6801000000000000000082048116948301949094526d010000000000000000000000000081048416606083015272010000000000000000000000000000000000008104909416608082015276010000000000000000000000000000000000000000000090930490911660a0830181905260019091015460c083015290955091925003612d20576040517f2546f9ea00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8251612d2b9061221c565b15612d62576040517f6893014300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8251612d6d90612251565b15612da4576040517f18989d5300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050979650505050505050565b6000612dd08270ffffffffffffffffffffffffffffffffff1660801c90565b60ff1660018111156105e6576105e6614693565b600081611ee081613c2b565b6000612dfb82613c42565b61209a576040517f35c196ef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080612e3d83613c77565b905067ffffffffffffffff602082901c81169085161015612e8a576040517fed43c3a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612e9b612e9885613c93565b90565b90508467ffffffffffffffff165a11612ee0576040517faa6c898500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000606088901c64ffffffffff16604089901c68ffffffffffffffffff16612f07876125f0565b8977ffffffffffffffffffffffffffffffffffffffffffffffff8716612f34612f2f8b613ca2565b613cc5565b604051602401612f4996959493929190614f8f565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f032f287e000000000000000000000000000000000000000000000000000000001790529050612fc36001600160a01b03831667ffffffffffffffff8816600084613d04565b93505050505b949350505050565b60006105e6612e9882602085612346565b600080612fee83613ad2565b90506000613031606087901c64ffffffffff166040805163ffffffff9092166020830152810187905260600160408051601f198184030181529190528390613d36565b905060006130686001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683613e64565b9050805160201415806130ad575061307f83613ea8565b7fffffffff00000000000000000000000000000000000000000000000000000000166130aa82614fcc565b14155b156130e4576040517ff8b4221800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060019695505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff161461314e57506000610bc4565b8260000361315e57506000610bc4565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636b47b3bc87878661319a8988613317565b6040518563ffffffff1660e01b81526004016131b9949392919061500e565b6020604051808303816000875af11580156131d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131fc919061503d565b9695505050505050565b600160fb55565b600054610100900460ff1661328a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b610fee613eb7565b600054610100900460ff1661330f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b610fee613f3d565b600082815261012e60205260409020546060906001600160a01b03168061333f575060608201515b600061012f846020015163ffffffff168154811061335f5761335f614c9c565b6000918252602080832090910154808352610130909152604082205490925061338d9063ffffffff1661215e565b5085516040808801516060808a0151835160e095861b7fffffffff0000000000000000000000000000000000000000000000000000000090811660208301527f000000000000000000000000000000000000000000000000000000000000000090961b9095166024860152602885018c90526048850188905260f89290921b7fff0000000000000000000000000000000000000000000000000000000000000016606885015284811b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000908116606986015288821b8116607d86015291901b1660918301528051608581840301815260a590920190529091506131fc565b60006105e661349983613749565b613fba565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff166134d083613ffb565b63ffffffff161461350d576040517fa752c23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061351883614009565b600081815261012d602090815260408083208151608081018352905463ffffffff80821680845264010000000083049091169483019490945268010000000000000000810460ff169282019290925269010000000000000000009091046001600160a01b031660608201529293509003613596575060009392505050565b805163ffffffff166135a785614018565b63ffffffff161415806135cc5750806040015160ff166135c685614026565b60ff1614155b156135db575060009392505050565b60006135e685614035565b60008181526101306020526040812054919250906136099063ffffffff1661215e565b50905061012f836020015163ffffffff168154811061362a5761362a614c9c565b90600052602060002001548214158061365d5750806001600160a01b031661365187614044565b6001600160a01b031614155b1561366e5750600095945050505050565b600084815261012e60205260409020546001600160a01b0316806136e15783606001516001600160a01b03166136a388614053565b6001600160a01b03161480156136d6575083606001516001600160a01b03166136cb88614060565b6001600160a01b0316145b979650505050505050565b60006136ec88614060565b9050816001600160a01b031661370189614053565b6001600160a01b031614801561373d57506001600160a01b038116158061373d575084606001516001600160a01b0316816001600160a01b0316145b98975050505050505050565b805160009060208301612fc9818361406d565b6000613767826140d0565b61209a576040517feb92662c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806137ab8585856137ea565b602084900360031b1c9150509392505050565b60006105e6816020846125fa565b60006105e66044600584612346565b60006105e66049600584612346565b6000816000036137fc57506000611ee0565b6020821115613837576040517f31d784a800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6fffffffffffffffffffffffffffffffff8416613854838561505f565b111561388c576040517fa3b99ded00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600382901b600061389d8660801c90565b909401517f80000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff929092019190911d16949350505050565b600064ffffffffff82111561209a5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203460448201527f3020626974730000000000000000000000000000000000000000000000000000606482015260840161106e565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006139e6826140ef565b61209a576040517fd082b2a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600160ff608084901c16111561209a576040517f58ebbfbe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105e6613a7d613a7184612fd1565b60009081526020902090565b612afb846141a4565b600082158015613a94575081155b15613aa1575060006105e6565b60408051602081018590529081018390526060016040516020818303038152906040528051906020012090506105e6565b6000613add826141b4565b61209a576040517f9d46362800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105e6826141f0565b6141f0565b815160009082811115613b62576040517fc5360feb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84915060005b81811015613b9f57613b9583868381518110613b8657613b86614c9c565b6020026020010151898461421b565b9250600101613b68565b50805b83811015613bc157613bb7836000898461421b565b9250600101613ba2565b5050949350505050565b60006101fe600183901b1660408110613c10576040517f1390f2a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000613c1c8787614244565b90506136d68282876006613b23565b60006105e6613c3b60118361505f565b83906142a5565b60006018613c526020604061505f565b613c5c919061505f565b6fffffffffffffffffffffffffffffffff8316101592915050565b60006105e6612e98613c8b6020604061505f565b601885612346565b60006105e660406020846125fa565b60006105e66018613cb56020604061505f565b613c3b919061505f565b906142a5565b60405180613cd6836020830161430b565b506fffffffffffffffffffffffffffffffff83166000601f8201601f19168301602001604052509052919050565b6000846001600160a01b03163b600003613d2057506000612fc9565b600080835160208501868989f195945050505050565b6060613d448251601f161590565b613d7a576040517fd49e9d1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805160038082526080820190925260009160208201606080368337019050509050613dec613da985613ea8565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091166020820152602401604051602081830303815290604052613749565b81600081518110613dff57613dff614c9c565b602002602001018181525050613e1483613749565b81600181518110613e2757613e27614c9c565b602002602001018181525050613e3c846143b4565b81600281518110613e4f57613e4f614c9c565b602002602001018181525050612fc9816143c2565b6060611ee0838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250614400565b600081611ee0818360046137ea565b600054610100900460ff16613f345760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b610fee336129cc565b600054610100900460ff166132065760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b6000613fc5826144e7565b61209a576040517f76b4e13c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105e660048084612346565b60006105e660086020846125fa565b60006105e681600484612346565b60006105e66048600184612346565b60006105e660286020846125fa565b60006105e66049835b90614503565b60006105e6605d8361404d565b60006105e660718361404d565b60008061407a838561505f565b905060405181111561408a575060005b806000036140c4576040517f10bef38600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b608084901b8317612fc9565b6000604e6fffffffffffffffffffffffffffffffff83165b1492915050565b60006fffffffffffffffffffffffffffffffff821661410f60118361505f565b81101561411f5750600092915050565b600061412a84614511565b9050600160ff608083901c161115614146575060009392505050565b600061416c61415483613a1c565b70ffffffffffffffffffffffffffffffffff16612db1565b600181111561417d5761417d614693565b0361419357612fc961418e85613c2b565b613c42565b612fc961419f85613c2b565b6141b4565b60006105e6613b1e602084613cbf565b60006fffffffffffffffffffffffffffffffff821660048110156141db5750600092915050565b611ee06141e9600483614e34565b601f161590565b6000806141fd8360801c90565b6fffffffffffffffffffffffffffffffff9390931690922092915050565b6000600183831c16810361423a576142338585613a86565b9050612fc9565b6142338486613a86565b6000828260405160200161428792919091825260e01b7fffffffff0000000000000000000000000000000000000000000000000000000016602082015260240190565b60405160208183030381529060405280519060200120905092915050565b60006fffffffffffffffffffffffffffffffff8316808311156142f4576040517fa3b99ded00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612fc9836143028660801c90565b0184830361406d565b6040516000906fffffffffffffffffffffffffffffffff841690608085901c9080851015614365576040517f4b2a158c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008386858560045afa9050806143a8576040517f7c7d772f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b608086901b84176136d6565b600081611ee08160046142a5565b6040518060006143d5846020840161451f565b6fffffffffffffffffffffffffffffffff16601f8101601f1916830160200160405290915250919050565b6060824710156144785760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c0000000000000000000000000000000000000000000000000000606482015260840161106e565b600080866001600160a01b031685876040516144949190615072565b60006040518083038185875af1925050503d80600081146144d1576040519150601f19603f3d011682016040523d82523d6000602084013e6144d6565b606091505b50915091506136d6878383876145c3565b600060856fffffffffffffffffffffffffffffffff83166140e8565b6000611ee08383601461379d565b60006105e68282601161379d565b6040516000908083101561455f576040517f4b2a158c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b85518110156145b657600086828151811061458057614580614c9c565b602002602001015190506145968184880161430b565b506fffffffffffffffffffffffffffffffff169190910190600101614563565b50608084901b8117610bc4565b6060831561463257825160000361462b576001600160a01b0385163b61462b5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161106e565b5081612fc9565b612fc983838151156146475781518083602001fd5b8060405162461bcd60e51b815260040161106e91906149f5565b6001600160a01b038116811461108057600080fd5b60006020828403121561468857600080fd5b8135611ee081614661565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8051600681106146d4576146d4614693565b825260208181015163ffffffff9081169184019190915260409182015116910152565b606081016105e682846146c2565b60006020828403121561471757600080fd5b5035919050565b60005b83811015614739578181015183820152602001614721565b50506000910152565b6000815180845261475a81602086016020860161471e565b601f01601f19169290920160200192915050565b6040815260006147816040830185614742565b8281036020840152610bc48185614742565b6001600160a01b038316815260808101611ee060208301846146c2565b63ffffffff8116811461108057600080fd5b6000602082840312156147d457600080fd5b8135611ee0816147b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715614837576148376147df565b604052919050565b600067ffffffffffffffff821115614859576148596147df565b50601f01601f191660200190565b600082601f83011261487857600080fd5b813561488b6148868261483f565b61480e565b8181528460208386010111156148a057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156148d557600080fd5b85356148e0816147b0565b94506020868101359450604087013567ffffffffffffffff8082111561490557600080fd5b6149118a838b01614867565b955060608901359450608089013591508082111561492e57600080fd5b818901915089601f83011261494257600080fd5b813581811115614954576149546147df565b8060051b915061496584830161480e565b818152918301840191848101908c84111561497f57600080fd5b938501935b838510156149bf57843592506fffffffffffffffffffffffffffffffff831683146149af5760008081fd5b8282529385019390850190614984565b8096505050505050509295509295909350565b6003811061108057611080614693565b602081016149ef836149d2565b91905290565b602081526000611ee06020830184614742565b60008083601f840112614a1a57600080fd5b50813567ffffffffffffffff811115614a3257600080fd5b6020830191508360208260051b8501011115614a4d57600080fd5b9250929050565b60008060208385031215614a6757600080fd5b823567ffffffffffffffff811115614a7e57600080fd5b614a8a85828601614a08565b90969095509350505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614b1c578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805115158452870151878401879052614b0987850182614742565b9588019593505090860190600101614abd565b509098975050505050505050565b60008060408385031215614b3d57600080fd5b8235614b48816147b0565b91506020830135614b58816147b0565b809150509250929050565b600080600080600080600060a0888a031215614b7e57600080fd5b873567ffffffffffffffff80821115614b9657600080fd5b614ba28b838c01614867565b985060208a0135915080821115614bb857600080fd5b614bc48b838c01614a08565b909850965060408a0135915080821115614bdd57600080fd5b614be98b838c01614a08565b909650945060608a0135915060ff82168214614c0457600080fd5b9092506080890135908082168214614c1b57600080fd5b508091505092959891949750929550565b81516060820190614c3c816149d2565b80835250602083015164ffffffffff8082166020850152806040860151166040850152505092915050565b600060208284031215614c7957600080fd5b813567ffffffffffffffff811115614c9057600080fd5b612fc984828501614867565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060208284031215614cdd57600080fd5b815167ffffffffffffffff811115614cf457600080fd5b8201601f81018413614d0557600080fd5b8051614d136148868261483f565b818152856020838501011115614d2857600080fd5b610bc482602083016020860161471e565b600060208284031215614d4b57600080fd5b5051919050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1833603018112614d8657600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614dc557600080fd5b83018035915067ffffffffffffffff821115614de057600080fd5b602001915036819003821315614a4d57600080fd5b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156105e6576105e6614e05565b64ffffffffff818116838216019080821115614e6557614e65614e05565b5092915050565b600060608284031215614e7e57600080fd5b6040516060810181811067ffffffffffffffff82111715614ea157614ea16147df565b8060405250809150825160068110614eb857600080fd5b81526020830151614ec8816147b0565b60208201526040830151614edb816147b0565b6040919091015292915050565b600060608284031215614efa57600080fd5b611ee08383614e6c565b60008060808385031215614f1757600080fd5b8251614f2281614661565b9150614f318460208501614e6c565b90509250929050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614f6b57614f6b614e05565b5060010190565b63ffffffff828116828216039080821115614e6557614e65614e05565b600063ffffffff8089168352808816602084015286604084015285606084015280851660808401525060c060a083015261373d60c0830184614742565b80516020808301519190811015610c75577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60209190910360031b1b16919050565b600063ffffffff8087168352808616602084015250836040830152608060608301526131fc6080830184614742565b60006020828403121561504f57600080fd5b81518015158114611ee057600080fd5b808201808211156105e6576105e6614e05565b60008251614d8681846020870161471e56fea26469706673582212202e653d4398ba9a9fe481cea5698ede916ac183b506c601fbcb3cfbbed9058d0764736f6c63430008110033", } // DestinationABI is the input ABI used to generate the binding from. // Deprecated: Use DestinationMetaData.ABI instead. var DestinationABI = DestinationMetaData.ABI // Deprecated: Use DestinationMetaData.Sigs instead. // DestinationFuncSigs maps the 4-byte function signature to its string representation. var DestinationFuncSigs = DestinationMetaData.Sigs // DestinationBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use DestinationMetaData.Bin instead. var DestinationBin = DestinationMetaData.Bin // DeployDestination deploys a new Ethereum contract, binding an instance of Destination to it. func DeployDestination(auth *bind.TransactOpts, backend bind.ContractBackend, synapseDomain_ uint32, agentManager_ common.Address, inbox_ common.Address) (common.Address, *types.Transaction, *Destination, error) { parsed, err := DestinationMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(DestinationBin), backend, synapseDomain_, agentManager_, inbox_) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &Destination{DestinationCaller: DestinationCaller{contract: contract}, DestinationTransactor: DestinationTransactor{contract: contract}, DestinationFilterer: DestinationFilterer{contract: contract}}, nil } // Destination is an auto generated Go binding around an Ethereum contract. type Destination struct { DestinationCaller // Read-only binding to the contract DestinationTransactor // Write-only binding to the contract DestinationFilterer // Log filterer for contract events } // DestinationCaller is an auto generated read-only Go binding around an Ethereum contract. type DestinationCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationTransactor is an auto generated write-only Go binding around an Ethereum contract. type DestinationTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type DestinationFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type DestinationSession struct { Contract *Destination // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // DestinationCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type DestinationCallerSession struct { Contract *DestinationCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // DestinationTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type DestinationTransactorSession struct { Contract *DestinationTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // DestinationRaw is an auto generated low-level Go binding around an Ethereum contract. type DestinationRaw struct { Contract *Destination // Generic contract binding to access the raw methods on } // DestinationCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type DestinationCallerRaw struct { Contract *DestinationCaller // Generic read-only contract binding to access the raw methods on } // DestinationTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type DestinationTransactorRaw struct { Contract *DestinationTransactor // Generic write-only contract binding to access the raw methods on } // NewDestination creates a new instance of Destination, bound to a specific deployed contract. func NewDestination(address common.Address, backend bind.ContractBackend) (*Destination, error) { contract, err := bindDestination(address, backend, backend, backend) if err != nil { return nil, err } return &Destination{DestinationCaller: DestinationCaller{contract: contract}, DestinationTransactor: DestinationTransactor{contract: contract}, DestinationFilterer: DestinationFilterer{contract: contract}}, nil } // NewDestinationCaller creates a new read-only instance of Destination, bound to a specific deployed contract. func NewDestinationCaller(address common.Address, caller bind.ContractCaller) (*DestinationCaller, error) { contract, err := bindDestination(address, caller, nil, nil) if err != nil { return nil, err } return &DestinationCaller{contract: contract}, nil } // NewDestinationTransactor creates a new write-only instance of Destination, bound to a specific deployed contract. func NewDestinationTransactor(address common.Address, transactor bind.ContractTransactor) (*DestinationTransactor, error) { contract, err := bindDestination(address, nil, transactor, nil) if err != nil { return nil, err } return &DestinationTransactor{contract: contract}, nil } // NewDestinationFilterer creates a new log filterer instance of Destination, bound to a specific deployed contract. func NewDestinationFilterer(address common.Address, filterer bind.ContractFilterer) (*DestinationFilterer, error) { contract, err := bindDestination(address, nil, nil, filterer) if err != nil { return nil, err } return &DestinationFilterer{contract: contract}, nil } // bindDestination binds a generic wrapper to an already deployed contract. func bindDestination(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := DestinationMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Destination *DestinationRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Destination.Contract.DestinationCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Destination *DestinationRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Destination.Contract.DestinationTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Destination *DestinationRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Destination.Contract.DestinationTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Destination *DestinationCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Destination.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Destination *DestinationTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Destination.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Destination *DestinationTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Destination.Contract.contract.Transact(opts, method, params...) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_Destination *DestinationCaller) AgentManager(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "agentManager") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_Destination *DestinationSession) AgentManager() (common.Address, error) { return _Destination.Contract.AgentManager(&_Destination.CallOpts) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_Destination *DestinationCallerSession) AgentManager() (common.Address, error) { return _Destination.Contract.AgentManager(&_Destination.CallOpts) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_Destination *DestinationCaller) AgentStatus(opts *bind.CallOpts, agent common.Address) (AgentStatus, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "agentStatus", agent) if err != nil { return *new(AgentStatus), err } out0 := *abi.ConvertType(out[0], new(AgentStatus)).(*AgentStatus) return out0, err } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_Destination *DestinationSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _Destination.Contract.AgentStatus(&_Destination.CallOpts, agent) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_Destination *DestinationCallerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _Destination.Contract.AgentStatus(&_Destination.CallOpts, agent) } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_Destination *DestinationCaller) AttestationsAmount(opts *bind.CallOpts) (*big.Int, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "attestationsAmount") if err != nil { return *new(*big.Int), err } out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) return out0, err } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_Destination *DestinationSession) AttestationsAmount() (*big.Int, error) { return _Destination.Contract.AttestationsAmount(&_Destination.CallOpts) } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_Destination *DestinationCallerSession) AttestationsAmount() (*big.Int, error) { return _Destination.Contract.AttestationsAmount(&_Destination.CallOpts) } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_Destination *DestinationCaller) DestStatus(opts *bind.CallOpts) (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "destStatus") outstruct := new(struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }) if err != nil { return *outstruct, err } outstruct.SnapRootTime = *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) outstruct.AgentRootTime = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) outstruct.NotaryIndex = *abi.ConvertType(out[2], new(uint32)).(*uint32) return *outstruct, err } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_Destination *DestinationSession) DestStatus() (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { return _Destination.Contract.DestStatus(&_Destination.CallOpts) } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_Destination *DestinationCallerSession) DestStatus() (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { return _Destination.Contract.DestStatus(&_Destination.CallOpts) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_Destination *DestinationCaller) GetAgent(opts *bind.CallOpts, index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "getAgent", index) outstruct := new(struct { Agent common.Address Status AgentStatus }) if err != nil { return *outstruct, err } outstruct.Agent = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Status = *abi.ConvertType(out[1], new(AgentStatus)).(*AgentStatus) return *outstruct, err } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_Destination *DestinationSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _Destination.Contract.GetAgent(&_Destination.CallOpts, index) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_Destination *DestinationCallerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _Destination.Contract.GetAgent(&_Destination.CallOpts, index) } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_Destination *DestinationCaller) GetAttestation(opts *bind.CallOpts, index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "getAttestation", index) outstruct := new(struct { AttPayload []byte AttSignature []byte }) if err != nil { return *outstruct, err } outstruct.AttPayload = *abi.ConvertType(out[0], new([]byte)).(*[]byte) outstruct.AttSignature = *abi.ConvertType(out[1], new([]byte)).(*[]byte) return *outstruct, err } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_Destination *DestinationSession) GetAttestation(index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { return _Destination.Contract.GetAttestation(&_Destination.CallOpts, index) } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_Destination *DestinationCallerSession) GetAttestation(index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { return _Destination.Contract.GetAttestation(&_Destination.CallOpts, index) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_Destination *DestinationCaller) GetAttestationNonce(opts *bind.CallOpts, snapRoot [32]byte) (uint32, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "getAttestationNonce", snapRoot) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_Destination *DestinationSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _Destination.Contract.GetAttestationNonce(&_Destination.CallOpts, snapRoot) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_Destination *DestinationCallerSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _Destination.Contract.GetAttestationNonce(&_Destination.CallOpts, snapRoot) } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_Destination *DestinationCaller) GetGasData(opts *bind.CallOpts, domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "getGasData", domain) outstruct := new(struct { GasData *big.Int DataMaturity *big.Int }) if err != nil { return *outstruct, err } outstruct.GasData = *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) outstruct.DataMaturity = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) return *outstruct, err } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_Destination *DestinationSession) GetGasData(domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { return _Destination.Contract.GetGasData(&_Destination.CallOpts, domain) } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_Destination *DestinationCallerSession) GetGasData(domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { return _Destination.Contract.GetGasData(&_Destination.CallOpts, domain) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_Destination *DestinationCaller) Inbox(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "inbox") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_Destination *DestinationSession) Inbox() (common.Address, error) { return _Destination.Contract.Inbox(&_Destination.CallOpts) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_Destination *DestinationCallerSession) Inbox() (common.Address, error) { return _Destination.Contract.Inbox(&_Destination.CallOpts) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_Destination *DestinationCaller) IsValidReceipt(opts *bind.CallOpts, rcptPayload []byte) (bool, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "isValidReceipt", rcptPayload) if err != nil { return *new(bool), err } out0 := *abi.ConvertType(out[0], new(bool)).(*bool) return out0, err } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_Destination *DestinationSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _Destination.Contract.IsValidReceipt(&_Destination.CallOpts, rcptPayload) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_Destination *DestinationCallerSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _Destination.Contract.IsValidReceipt(&_Destination.CallOpts, rcptPayload) } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 ) view returns(uint32) func (_Destination *DestinationCaller) LastAttestationNonce(opts *bind.CallOpts, arg0 uint32) (uint32, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "lastAttestationNonce", arg0) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 ) view returns(uint32) func (_Destination *DestinationSession) LastAttestationNonce(arg0 uint32) (uint32, error) { return _Destination.Contract.LastAttestationNonce(&_Destination.CallOpts, arg0) } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 ) view returns(uint32) func (_Destination *DestinationCallerSession) LastAttestationNonce(arg0 uint32) (uint32, error) { return _Destination.Contract.LastAttestationNonce(&_Destination.CallOpts, arg0) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_Destination *DestinationCaller) LatestDisputeStatus(opts *bind.CallOpts, agentIndex uint32) (DisputeStatus, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "latestDisputeStatus", agentIndex) if err != nil { return *new(DisputeStatus), err } out0 := *abi.ConvertType(out[0], new(DisputeStatus)).(*DisputeStatus) return out0, err } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_Destination *DestinationSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _Destination.Contract.LatestDisputeStatus(&_Destination.CallOpts, agentIndex) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_Destination *DestinationCallerSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _Destination.Contract.LatestDisputeStatus(&_Destination.CallOpts, agentIndex) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_Destination *DestinationCaller) LocalDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "localDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_Destination *DestinationSession) LocalDomain() (uint32, error) { return _Destination.Contract.LocalDomain(&_Destination.CallOpts) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_Destination *DestinationCallerSession) LocalDomain() (uint32, error) { return _Destination.Contract.LocalDomain(&_Destination.CallOpts) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_Destination *DestinationCaller) MessageReceipt(opts *bind.CallOpts, messageHash [32]byte) ([]byte, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "messageReceipt", messageHash) if err != nil { return *new([]byte), err } out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) return out0, err } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_Destination *DestinationSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _Destination.Contract.MessageReceipt(&_Destination.CallOpts, messageHash) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_Destination *DestinationCallerSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _Destination.Contract.MessageReceipt(&_Destination.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_Destination *DestinationCaller) MessageStatus(opts *bind.CallOpts, messageHash [32]byte) (uint8, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "messageStatus", messageHash) if err != nil { return *new(uint8), err } out0 := *abi.ConvertType(out[0], new(uint8)).(*uint8) return out0, err } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_Destination *DestinationSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _Destination.Contract.MessageStatus(&_Destination.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_Destination *DestinationCallerSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _Destination.Contract.MessageStatus(&_Destination.CallOpts, messageHash) } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_Destination *DestinationCaller) NextAgentRoot(opts *bind.CallOpts) ([32]byte, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "nextAgentRoot") if err != nil { return *new([32]byte), err } out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) return out0, err } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_Destination *DestinationSession) NextAgentRoot() ([32]byte, error) { return _Destination.Contract.NextAgentRoot(&_Destination.CallOpts) } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_Destination *DestinationCallerSession) NextAgentRoot() ([32]byte, error) { return _Destination.Contract.NextAgentRoot(&_Destination.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_Destination *DestinationCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_Destination *DestinationSession) Owner() (common.Address, error) { return _Destination.Contract.Owner(&_Destination.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_Destination *DestinationCallerSession) Owner() (common.Address, error) { return _Destination.Contract.Owner(&_Destination.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_Destination *DestinationCaller) PendingOwner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "pendingOwner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_Destination *DestinationSession) PendingOwner() (common.Address, error) { return _Destination.Contract.PendingOwner(&_Destination.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_Destination *DestinationCallerSession) PendingOwner() (common.Address, error) { return _Destination.Contract.PendingOwner(&_Destination.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_Destination *DestinationCaller) SynapseDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "synapseDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_Destination *DestinationSession) SynapseDomain() (uint32, error) { return _Destination.Contract.SynapseDomain(&_Destination.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_Destination *DestinationCallerSession) SynapseDomain() (uint32, error) { return _Destination.Contract.SynapseDomain(&_Destination.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_Destination *DestinationCaller) Version(opts *bind.CallOpts) (string, error) { var out []interface{} err := _Destination.contract.Call(opts, &out, "version") if err != nil { return *new(string), err } out0 := *abi.ConvertType(out[0], new(string)).(*string) return out0, err } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_Destination *DestinationSession) Version() (string, error) { return _Destination.Contract.Version(&_Destination.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_Destination *DestinationCallerSession) Version() (string, error) { return _Destination.Contract.Version(&_Destination.CallOpts) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_Destination *DestinationTransactor) AcceptAttestation(opts *bind.TransactOpts, notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "acceptAttestation", notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_Destination *DestinationSession) AcceptAttestation(notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _Destination.Contract.AcceptAttestation(&_Destination.TransactOpts, notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_Destination *DestinationTransactorSession) AcceptAttestation(notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _Destination.Contract.AcceptAttestation(&_Destination.TransactOpts, notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_Destination *DestinationTransactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "acceptOwnership") } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_Destination *DestinationSession) AcceptOwnership() (*types.Transaction, error) { return _Destination.Contract.AcceptOwnership(&_Destination.TransactOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_Destination *DestinationTransactorSession) AcceptOwnership() (*types.Transaction, error) { return _Destination.Contract.AcceptOwnership(&_Destination.TransactOpts) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_Destination *DestinationTransactor) Execute(opts *bind.TransactOpts, msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "execute", msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_Destination *DestinationSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _Destination.Contract.Execute(&_Destination.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_Destination *DestinationTransactorSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _Destination.Contract.Execute(&_Destination.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Initialize is a paid mutator transaction binding the contract method 0x9498bd71. // // Solidity: function initialize(bytes32 agentRoot) returns() func (_Destination *DestinationTransactor) Initialize(opts *bind.TransactOpts, agentRoot [32]byte) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "initialize", agentRoot) } // Initialize is a paid mutator transaction binding the contract method 0x9498bd71. // // Solidity: function initialize(bytes32 agentRoot) returns() func (_Destination *DestinationSession) Initialize(agentRoot [32]byte) (*types.Transaction, error) { return _Destination.Contract.Initialize(&_Destination.TransactOpts, agentRoot) } // Initialize is a paid mutator transaction binding the contract method 0x9498bd71. // // Solidity: function initialize(bytes32 agentRoot) returns() func (_Destination *DestinationTransactorSession) Initialize(agentRoot [32]byte) (*types.Transaction, error) { return _Destination.Contract.Initialize(&_Destination.TransactOpts, agentRoot) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_Destination *DestinationTransactor) Multicall(opts *bind.TransactOpts, calls []MultiCallableCall) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "multicall", calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_Destination *DestinationSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _Destination.Contract.Multicall(&_Destination.TransactOpts, calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_Destination *DestinationTransactorSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _Destination.Contract.Multicall(&_Destination.TransactOpts, calls) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_Destination *DestinationTransactor) OpenDispute(opts *bind.TransactOpts, guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "openDispute", guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_Destination *DestinationSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _Destination.Contract.OpenDispute(&_Destination.TransactOpts, guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_Destination *DestinationTransactorSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _Destination.Contract.OpenDispute(&_Destination.TransactOpts, guardIndex, notaryIndex) } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_Destination *DestinationTransactor) PassAgentRoot(opts *bind.TransactOpts) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "passAgentRoot") } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_Destination *DestinationSession) PassAgentRoot() (*types.Transaction, error) { return _Destination.Contract.PassAgentRoot(&_Destination.TransactOpts) } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_Destination *DestinationTransactorSession) PassAgentRoot() (*types.Transaction, error) { return _Destination.Contract.PassAgentRoot(&_Destination.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_Destination *DestinationTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_Destination *DestinationSession) RenounceOwnership() (*types.Transaction, error) { return _Destination.Contract.RenounceOwnership(&_Destination.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_Destination *DestinationTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _Destination.Contract.RenounceOwnership(&_Destination.TransactOpts) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_Destination *DestinationTransactor) ResolveDispute(opts *bind.TransactOpts, slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "resolveDispute", slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_Destination *DestinationSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _Destination.Contract.ResolveDispute(&_Destination.TransactOpts, slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_Destination *DestinationTransactorSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _Destination.Contract.ResolveDispute(&_Destination.TransactOpts, slashedIndex, rivalIndex) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_Destination *DestinationTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _Destination.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_Destination *DestinationSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _Destination.Contract.TransferOwnership(&_Destination.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_Destination *DestinationTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _Destination.Contract.TransferOwnership(&_Destination.TransactOpts, newOwner) } // DestinationAgentRootAcceptedIterator is returned from FilterAgentRootAccepted and is used to iterate over the raw logs and unpacked data for AgentRootAccepted events raised by the Destination contract. type DestinationAgentRootAcceptedIterator struct { Event *DestinationAgentRootAccepted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationAgentRootAcceptedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationAgentRootAccepted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationAgentRootAccepted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationAgentRootAcceptedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationAgentRootAcceptedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationAgentRootAccepted represents a AgentRootAccepted event raised by the Destination contract. type DestinationAgentRootAccepted struct { AgentRoot [32]byte Raw types.Log // Blockchain specific contextual infos } // FilterAgentRootAccepted is a free log retrieval operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_Destination *DestinationFilterer) FilterAgentRootAccepted(opts *bind.FilterOpts) (*DestinationAgentRootAcceptedIterator, error) { logs, sub, err := _Destination.contract.FilterLogs(opts, "AgentRootAccepted") if err != nil { return nil, err } return &DestinationAgentRootAcceptedIterator{contract: _Destination.contract, event: "AgentRootAccepted", logs: logs, sub: sub}, nil } // WatchAgentRootAccepted is a free log subscription operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_Destination *DestinationFilterer) WatchAgentRootAccepted(opts *bind.WatchOpts, sink chan<- *DestinationAgentRootAccepted) (event.Subscription, error) { logs, sub, err := _Destination.contract.WatchLogs(opts, "AgentRootAccepted") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationAgentRootAccepted) if err := _Destination.contract.UnpackLog(event, "AgentRootAccepted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseAgentRootAccepted is a log parse operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_Destination *DestinationFilterer) ParseAgentRootAccepted(log types.Log) (*DestinationAgentRootAccepted, error) { event := new(DestinationAgentRootAccepted) if err := _Destination.contract.UnpackLog(event, "AgentRootAccepted", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationExecutedIterator is returned from FilterExecuted and is used to iterate over the raw logs and unpacked data for Executed events raised by the Destination contract. type DestinationExecutedIterator struct { Event *DestinationExecuted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationExecutedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationExecutedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationExecutedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationExecuted represents a Executed event raised by the Destination contract. type DestinationExecuted struct { RemoteDomain uint32 MessageHash [32]byte Success bool Raw types.Log // Blockchain specific contextual infos } // FilterExecuted is a free log retrieval operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_Destination *DestinationFilterer) FilterExecuted(opts *bind.FilterOpts, remoteDomain []uint32, messageHash [][32]byte) (*DestinationExecutedIterator, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _Destination.contract.FilterLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return &DestinationExecutedIterator{contract: _Destination.contract, event: "Executed", logs: logs, sub: sub}, nil } // WatchExecuted is a free log subscription operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_Destination *DestinationFilterer) WatchExecuted(opts *bind.WatchOpts, sink chan<- *DestinationExecuted, remoteDomain []uint32, messageHash [][32]byte) (event.Subscription, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _Destination.contract.WatchLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationExecuted) if err := _Destination.contract.UnpackLog(event, "Executed", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseExecuted is a log parse operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_Destination *DestinationFilterer) ParseExecuted(log types.Log) (*DestinationExecuted, error) { event := new(DestinationExecuted) if err := _Destination.contract.UnpackLog(event, "Executed", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the Destination contract. type DestinationInitializedIterator struct { Event *DestinationInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationInitialized represents a Initialized event raised by the Destination contract. type DestinationInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Destination *DestinationFilterer) FilterInitialized(opts *bind.FilterOpts) (*DestinationInitializedIterator, error) { logs, sub, err := _Destination.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &DestinationInitializedIterator{contract: _Destination.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Destination *DestinationFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *DestinationInitialized) (event.Subscription, error) { logs, sub, err := _Destination.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationInitialized) if err := _Destination.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Destination *DestinationFilterer) ParseInitialized(log types.Log) (*DestinationInitialized, error) { event := new(DestinationInitialized) if err := _Destination.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationOwnershipTransferStartedIterator is returned from FilterOwnershipTransferStarted and is used to iterate over the raw logs and unpacked data for OwnershipTransferStarted events raised by the Destination contract. type DestinationOwnershipTransferStartedIterator struct { Event *DestinationOwnershipTransferStarted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationOwnershipTransferStartedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationOwnershipTransferStartedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationOwnershipTransferStartedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationOwnershipTransferStarted represents a OwnershipTransferStarted event raised by the Destination contract. type DestinationOwnershipTransferStarted struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferStarted is a free log retrieval operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_Destination *DestinationFilterer) FilterOwnershipTransferStarted(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*DestinationOwnershipTransferStartedIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Destination.contract.FilterLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &DestinationOwnershipTransferStartedIterator{contract: _Destination.contract, event: "OwnershipTransferStarted", logs: logs, sub: sub}, nil } // WatchOwnershipTransferStarted is a free log subscription operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_Destination *DestinationFilterer) WatchOwnershipTransferStarted(opts *bind.WatchOpts, sink chan<- *DestinationOwnershipTransferStarted, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Destination.contract.WatchLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationOwnershipTransferStarted) if err := _Destination.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferStarted is a log parse operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_Destination *DestinationFilterer) ParseOwnershipTransferStarted(log types.Log) (*DestinationOwnershipTransferStarted, error) { event := new(DestinationOwnershipTransferStarted) if err := _Destination.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Destination contract. type DestinationOwnershipTransferredIterator struct { Event *DestinationOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationOwnershipTransferred represents a OwnershipTransferred event raised by the Destination contract. type DestinationOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_Destination *DestinationFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*DestinationOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Destination.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &DestinationOwnershipTransferredIterator{contract: _Destination.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_Destination *DestinationFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *DestinationOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Destination.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationOwnershipTransferred) if err := _Destination.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_Destination *DestinationFilterer) ParseOwnershipTransferred(log types.Log) (*DestinationOwnershipTransferred, error) { event := new(DestinationOwnershipTransferred) if err := _Destination.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationTipsRecordedIterator is returned from FilterTipsRecorded and is used to iterate over the raw logs and unpacked data for TipsRecorded events raised by the Destination contract. type DestinationTipsRecordedIterator struct { Event *DestinationTipsRecorded // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationTipsRecordedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationTipsRecordedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationTipsRecordedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationTipsRecorded represents a TipsRecorded event raised by the Destination contract. type DestinationTipsRecorded struct { MessageHash [32]byte PaddedTips *big.Int Raw types.Log // Blockchain specific contextual infos } // FilterTipsRecorded is a free log retrieval operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_Destination *DestinationFilterer) FilterTipsRecorded(opts *bind.FilterOpts) (*DestinationTipsRecordedIterator, error) { logs, sub, err := _Destination.contract.FilterLogs(opts, "TipsRecorded") if err != nil { return nil, err } return &DestinationTipsRecordedIterator{contract: _Destination.contract, event: "TipsRecorded", logs: logs, sub: sub}, nil } // WatchTipsRecorded is a free log subscription operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_Destination *DestinationFilterer) WatchTipsRecorded(opts *bind.WatchOpts, sink chan<- *DestinationTipsRecorded) (event.Subscription, error) { logs, sub, err := _Destination.contract.WatchLogs(opts, "TipsRecorded") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationTipsRecorded) if err := _Destination.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseTipsRecorded is a log parse operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_Destination *DestinationFilterer) ParseTipsRecorded(log types.Log) (*DestinationTipsRecorded, error) { event := new(DestinationTipsRecorded) if err := _Destination.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationEventsMetaData contains all meta data concerning the DestinationEvents contract. var DestinationEventsMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"}],\"name\":\"AgentRootAccepted\",\"type\":\"event\"}]", } // DestinationEventsABI is the input ABI used to generate the binding from. // Deprecated: Use DestinationEventsMetaData.ABI instead. var DestinationEventsABI = DestinationEventsMetaData.ABI // DestinationEvents is an auto generated Go binding around an Ethereum contract. type DestinationEvents struct { DestinationEventsCaller // Read-only binding to the contract DestinationEventsTransactor // Write-only binding to the contract DestinationEventsFilterer // Log filterer for contract events } // DestinationEventsCaller is an auto generated read-only Go binding around an Ethereum contract. type DestinationEventsCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationEventsTransactor is an auto generated write-only Go binding around an Ethereum contract. type DestinationEventsTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationEventsFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type DestinationEventsFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationEventsSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type DestinationEventsSession struct { Contract *DestinationEvents // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // DestinationEventsCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type DestinationEventsCallerSession struct { Contract *DestinationEventsCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // DestinationEventsTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type DestinationEventsTransactorSession struct { Contract *DestinationEventsTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // DestinationEventsRaw is an auto generated low-level Go binding around an Ethereum contract. type DestinationEventsRaw struct { Contract *DestinationEvents // Generic contract binding to access the raw methods on } // DestinationEventsCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type DestinationEventsCallerRaw struct { Contract *DestinationEventsCaller // Generic read-only contract binding to access the raw methods on } // DestinationEventsTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type DestinationEventsTransactorRaw struct { Contract *DestinationEventsTransactor // Generic write-only contract binding to access the raw methods on } // NewDestinationEvents creates a new instance of DestinationEvents, bound to a specific deployed contract. func NewDestinationEvents(address common.Address, backend bind.ContractBackend) (*DestinationEvents, error) { contract, err := bindDestinationEvents(address, backend, backend, backend) if err != nil { return nil, err } return &DestinationEvents{DestinationEventsCaller: DestinationEventsCaller{contract: contract}, DestinationEventsTransactor: DestinationEventsTransactor{contract: contract}, DestinationEventsFilterer: DestinationEventsFilterer{contract: contract}}, nil } // NewDestinationEventsCaller creates a new read-only instance of DestinationEvents, bound to a specific deployed contract. func NewDestinationEventsCaller(address common.Address, caller bind.ContractCaller) (*DestinationEventsCaller, error) { contract, err := bindDestinationEvents(address, caller, nil, nil) if err != nil { return nil, err } return &DestinationEventsCaller{contract: contract}, nil } // NewDestinationEventsTransactor creates a new write-only instance of DestinationEvents, bound to a specific deployed contract. func NewDestinationEventsTransactor(address common.Address, transactor bind.ContractTransactor) (*DestinationEventsTransactor, error) { contract, err := bindDestinationEvents(address, nil, transactor, nil) if err != nil { return nil, err } return &DestinationEventsTransactor{contract: contract}, nil } // NewDestinationEventsFilterer creates a new log filterer instance of DestinationEvents, bound to a specific deployed contract. func NewDestinationEventsFilterer(address common.Address, filterer bind.ContractFilterer) (*DestinationEventsFilterer, error) { contract, err := bindDestinationEvents(address, nil, nil, filterer) if err != nil { return nil, err } return &DestinationEventsFilterer{contract: contract}, nil } // bindDestinationEvents binds a generic wrapper to an already deployed contract. func bindDestinationEvents(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := DestinationEventsMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_DestinationEvents *DestinationEventsRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _DestinationEvents.Contract.DestinationEventsCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_DestinationEvents *DestinationEventsRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationEvents.Contract.DestinationEventsTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_DestinationEvents *DestinationEventsRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _DestinationEvents.Contract.DestinationEventsTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_DestinationEvents *DestinationEventsCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _DestinationEvents.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_DestinationEvents *DestinationEventsTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationEvents.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_DestinationEvents *DestinationEventsTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _DestinationEvents.Contract.contract.Transact(opts, method, params...) } // DestinationEventsAgentRootAcceptedIterator is returned from FilterAgentRootAccepted and is used to iterate over the raw logs and unpacked data for AgentRootAccepted events raised by the DestinationEvents contract. type DestinationEventsAgentRootAcceptedIterator struct { Event *DestinationEventsAgentRootAccepted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationEventsAgentRootAcceptedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationEventsAgentRootAccepted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationEventsAgentRootAccepted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationEventsAgentRootAcceptedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationEventsAgentRootAcceptedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationEventsAgentRootAccepted represents a AgentRootAccepted event raised by the DestinationEvents contract. type DestinationEventsAgentRootAccepted struct { AgentRoot [32]byte Raw types.Log // Blockchain specific contextual infos } // FilterAgentRootAccepted is a free log retrieval operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_DestinationEvents *DestinationEventsFilterer) FilterAgentRootAccepted(opts *bind.FilterOpts) (*DestinationEventsAgentRootAcceptedIterator, error) { logs, sub, err := _DestinationEvents.contract.FilterLogs(opts, "AgentRootAccepted") if err != nil { return nil, err } return &DestinationEventsAgentRootAcceptedIterator{contract: _DestinationEvents.contract, event: "AgentRootAccepted", logs: logs, sub: sub}, nil } // WatchAgentRootAccepted is a free log subscription operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_DestinationEvents *DestinationEventsFilterer) WatchAgentRootAccepted(opts *bind.WatchOpts, sink chan<- *DestinationEventsAgentRootAccepted) (event.Subscription, error) { logs, sub, err := _DestinationEvents.contract.WatchLogs(opts, "AgentRootAccepted") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationEventsAgentRootAccepted) if err := _DestinationEvents.contract.UnpackLog(event, "AgentRootAccepted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseAgentRootAccepted is a log parse operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_DestinationEvents *DestinationEventsFilterer) ParseAgentRootAccepted(log types.Log) (*DestinationEventsAgentRootAccepted, error) { event := new(DestinationEventsAgentRootAccepted) if err := _DestinationEvents.contract.UnpackLog(event, "AgentRootAccepted", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationHarnessMetaData contains all meta data concerning the DestinationHarness contract. var DestinationHarnessMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"agentManager_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"inbox_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AlreadyExecuted\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AlreadyFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CallerNotAgentManager\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CallerNotInbox\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DisputeTimeoutNotOver\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DuplicatedSnapshotRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FlagOutOfRange\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GasLimitTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GasSuppliedTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectDestinationDomain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectMagicValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectOriginDomain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectSnapshotRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectVersionLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IndexOutOfRange\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IndexedTooMuch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MessageOptimisticPeriod\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotaryInDispute\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OccupiedMemory\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OutdatedNonce\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PrecompileOutOfGas\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TreeHeightTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnallocatedMemory\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedAttestation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedBaseMessage\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedCallData\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedCallDataPrefix\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedMessage\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedReceipt\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ViewOverrun\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"}],\"name\":\"AgentRootAccepted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint32\",\"name\":\"remoteDomain\",\"type\":\"uint32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"name\":\"Executed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"paddedTips\",\"type\":\"uint256\"}],\"name\":\"TipsRecorded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"sigIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"},{\"internalType\":\"ChainGas[]\",\"name\":\"snapGas\",\"type\":\"uint128[]\"}],\"name\":\"acceptAttestation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"agentManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"agentStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"attestationsAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"destStatus\",\"outputs\":[{\"internalType\":\"uint40\",\"name\":\"snapRootTime\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"agentRootTime\",\"type\":\"uint40\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"msgPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[]\",\"name\":\"originProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"snapProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"gasLimit\",\"type\":\"uint64\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAgent\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAttestation\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"snapRoot\",\"type\":\"bytes32\"}],\"name\":\"getAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"attNonce\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"}],\"name\":\"getGasData\",\"outputs\":[{\"internalType\":\"GasData\",\"name\":\"gasData\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"dataMaturity\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inbox\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"name\":\"isValidReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValid\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"name\":\"lastAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"agentIndex\",\"type\":\"uint32\"}],\"name\":\"latestDisputeStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumDisputeFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"openedAt\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"resolvedAt\",\"type\":\"uint40\"}],\"internalType\":\"structDisputeStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"localDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageReceipt\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageStatus\",\"outputs\":[{\"internalType\":\"enumMessageStatus\",\"name\":\"status\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Result[]\",\"name\":\"callResults\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextAgentRoot\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"guardIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"openDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"passAgentRoot\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"rootPending\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"slashedIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rivalIndex\",\"type\":\"uint32\"}],\"name\":\"resolveDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"synapseDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"versionString\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "39fe2736": "acceptAttestation(uint32,uint256,bytes,bytes32,uint128[])", "79ba5097": "acceptOwnership()", "7622f78d": "agentManager()", "28f3fac9": "agentStatus(address)", "3cf7b120": "attestationsAmount()", "40989152": "destStatus()", "883099bc": "execute(bytes,bytes32[],bytes32[],uint8,uint64)", "2de5aaf7": "getAgent(uint256)", "29be4db2": "getAttestation(uint256)", "4f127567": "getAttestationNonce(bytes32)", "d0dd0675": "getGasData(uint32)", "fb0e722b": "inbox()", "9498bd71": "initialize(bytes32)", "e2f006f7": "isValidReceipt(bytes)", "305b29ee": "lastAttestationNonce(uint32)", "dfadd81a": "latestDisputeStatus(uint32)", "8d3638f4": "localDomain()", "daa74a9e": "messageReceipt(bytes32)", "3c6cf473": "messageStatus(bytes32)", "60fc8466": "multicall((bool,bytes)[])", "55252dd1": "nextAgentRoot()", "a2155c34": "openDispute(uint32,uint32)", "8da5cb5b": "owner()", "a554d1e3": "passAgentRoot()", "e30c3978": "pendingOwner()", "715018a6": "renounceOwnership()", "61169218": "resolveDispute(uint32,uint32)", "717b8638": "synapseDomain()", "f2fde38b": "transferOwnership(address)", "54fd4d50": "version()", }, Bin: "0x6101406040523480156200001257600080fd5b50604051620053b5380380620053b5833981016040819052620000359162000164565b60408051808201909152600580825264302e302e3360d81b60208301526080528390839083908383838383816200006c81620001b8565b60a081815250505062000089620000bc60201b620020171760201c565b63ffffffff90811660c0521660e052506001600160a01b0391821661010052166101205250620001e09650505050505050565b6000620000d446620000d960201b6200201e1760201c565b905090565b600063ffffffff821115620001435760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201526532206269747360d01b606482015260840160405180910390fd5b5090565b80516001600160a01b03811681146200015f57600080fd5b919050565b6000806000606084860312156200017a57600080fd5b835163ffffffff811681146200018f57600080fd5b92506200019f6020850162000147565b9150620001af6040850162000147565b90509250925092565b80516020808301519190811015620001da576000198160200360031b1b821691505b50919050565b60805160a05160c05160e05161010051610120516150ba620002fb6000396000818161059e0152818161087801528181610935015261316001526000818161043d01528181610cda01528181610ed5015281816117ea0152818161190a01528181611ba201528181611d0d015281816120f3015281816121a90152613042015260008181610416015281816107f201528181610c7f0152818161176401528181611b470152818161269e01526130f50152600081816104970152818161081901528181610ca6015281816110b9015281816111310152818161178b01528181611b6e01528181612675015281816127940152818161311c015281816133ce01526134a20152600061039a0152600061037701526150ba6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80637622f78d11610104578063a554d1e3116100a2578063e2f006f711610071578063e2f006f714610562578063e30c397814610575578063f2fde38b14610586578063fb0e722b1461059957600080fd5b8063a554d1e3146104f0578063d0dd0675146104f8578063daa74a9e1461052f578063dfadd81a1461054257600080fd5b80638d3638f4116100de5780638d3638f4146104925780638da5cb5b146104b95780639498bd71146104ca578063a2155c34146104dd57600080fd5b80637622f78d1461043857806379ba509714610477578063883099bc1461047f57600080fd5b8063409891521161017c57806360fc84661161014b57806360fc8466146103d457806361169218146103f4578063715018a614610409578063717b86381461041157600080fd5b806340989152146102dc5780634f1275671461033c57806354fd4d501461036b57806355252dd1146103cc57600080fd5b8063305b29ee116101b8578063305b29ee1461024a57806339fe2736146102865780633c6cf473146102a95780633cf7b120146102c957600080fd5b806328f3fac9146101df57806329be4db2146102085780632de5aaf714610229575b600080fd5b6101f26101ed366004614676565b6105c0565b6040516101ff91906146f7565b60405180910390f35b61021b610216366004614705565b6105ec565b6040516101ff92919061476e565b61023c610237366004614705565b6108fa565b6040516101ff929190614793565b6102716102583660046147c2565b6101616020526000908152604090205463ffffffff1681565b60405163ffffffff90911681526020016101ff565b6102996102943660046148bd565b610928565b60405190151581526020016101ff565b6102bc6102b7366004614705565b610bcd565b6040516101ff91906149e2565b61012f545b6040519081526020016101ff565b610160546103129064ffffffffff80821691650100000000008104909116906a0100000000000000000000900463ffffffff1683565b6040805164ffffffffff948516815293909216602084015263ffffffff16908201526060016101ff565b61027161034a366004614705565b60009081526101306020526040902054640100000000900463ffffffff1690565b604080518082019091527f000000000000000000000000000000000000000000000000000000000000000081527f000000000000000000000000000000000000000000000000000000000000000060208201525b6040516101ff91906149f5565b6102ce610c7b565b6103e76103e2366004614a54565b610d5f565b6040516101ff9190614a96565b610407610402366004614b2a565b610eca565b005b610407610fe6565b6102717f000000000000000000000000000000000000000000000000000000000000000081565b61045f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101ff565b610407610ff0565b61040761048d366004614b63565b611083565b6102717f000000000000000000000000000000000000000000000000000000000000000081565b6033546001600160a01b031661045f565b6104076104d8366004614705565b611648565b6104076104eb366004614b2a565b6118ff565b610299611b43565b61050b6105063660046147c2565b611d7b565b604080516bffffffffffffffffffffffff90931683526020830191909152016101ff565b6103bf61053d366004614705565b611e48565b6105556105503660046147c2565b611ee7565b6040516101ff9190614c2c565b610299610570366004614c67565b611f7b565b6065546001600160a01b031661045f565b610407610594366004614676565b611f8e565b61045f7f000000000000000000000000000000000000000000000000000000000000000081565b60408051606081018252600080825260208201819052918101919091526105e68261209e565b92915050565b61012f546060908190831061062d576040517f1390f2a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061012f848154811061064357610643614c9c565b600091825260208083209091015480835261013082526040808420815160e081018352815463ffffffff8082168352640100000000820481169683019690965264ffffffffff6801000000000000000082048116948301949094526d010000000000000000000000000081048416606083015272010000000000000000000000000000000000008104909516608082015276010000000000000000000000000000000000000000000090940490911660a08401526001015460c08301526101628054919450919291908790811061071c5761071c614c9c565b90600052602060002090600202016040518060400160405290816000820154815260200160018201548152505090506107ee8382602001518460200151856040015186606001516040805160208101969096528581019490945260e09290921b7fffffffff0000000000000000000000000000000000000000000000000000000016606085015260d890811b7fffffffffff000000000000000000000000000000000000000000000000000000908116606486015291901b1660698301528051604e818403018152606e909201905290565b94507f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff16146108f25760c08201516040517fddeffa6600000000000000000000000000000000000000000000000000000000815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ddeffa6690602401600060405180830381865afa1580156108c7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108ef9190810190614ccb565b93505b505050915091565b6040805160608101825260008082526020820181905291810182905261091f8361215e565b91509150915091565b6000336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461098c576040517fdbc2fa8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109958661221c565b156109cc576040517f6893014300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109d586612251565b15610a0c576040517f18989d5300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610a1785612328565b90506000610a248261233b565b63ffffffff808a166000908152610161602052604090205491925090811690821611610a7c576040517f7b7fd2c200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b63ffffffff88811660009081526101616020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000016918316919091179055610acb82898961234d565b6101626040518060400160405280878152602001610ae8856125f0565b905281546001818101845560009384526020808520845160029094020192835590920151910155610b17611b43565b9050610b2481878b612601565b80516101608054602084015160409094015163ffffffff166a0100000000000000000000027fffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffff64ffffffffff95861665010000000000027fffffffffffffffffffffffffffffffffffffffffffff0000000000000000000090931695909416949094171791909116919091179055610bbc858a61274a565b600193505050505b95945050505050565b600081815261012d602090815260408083208151608081018352905463ffffffff80821683526401000000008204169382019390935268010000000000000000830460ff169181019190915269010000000000000000009091046001600160a01b03166060820181905215610c455750600292915050565b600083815261012e60205260409020546001600160a01b031615610c6c5750600192915050565b50600092915050565b50919050565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff1614610cd8575061015f5490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166336cba43c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5a9190614d39565b905090565b6060818067ffffffffffffffff811115610d7b57610d7b6147df565b604051908082528060200260200182016040528015610dc157816020015b604080518082019091526000815260606020820152815260200190600190039081610d995790505b5091503660005b82811015610ec157858582818110610de257610de2614c9c565b9050602002810190610df49190614d52565b91506000848281518110610e0a57610e0a614c9c565b60200260200101519050306001600160a01b0316838060200190610e2e9190614d90565b604051610e3c929190614df5565b600060405180830381855af49150503d8060008114610e77576040519150601f19603f3d011682016040523d82523d6000602084013e610e7c565b606091505b5060208301521515808252833517610eb8577f4d6a23280000000000000000000000000000000000000000000000000000000060005260046000fd5b50600101610dc8565b50505092915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f2c576040517ff79626c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610f36612967565b63ffffffff848116600090815260c960205260409020805464ffffffffff84166601000000000000027fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffff00909116176002179055909150821615610fe15763ffffffff8216600090815260c96020526040902080547fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffff0016660100000000000064ffffffffff8416021790555b505050565b610fee612972565b565b60655433906001600160a01b031681146110775760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b611080816129cc565b50565b61108b6129fd565b600061109688612a56565b905060006110a382612a69565b905060006110b083612a7f565b905063ffffffff7f000000000000000000000000000000000000000000000000000000000000000016602083901c6cffffffffffffffffffffffffff1663ffffffff161461112a576040517fa752c23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b63ffffffff7f000000000000000000000000000000000000000000000000000000000000000016606083901c64ffffffffff1663ffffffff160361119a576040517f3eeb1dd400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600081815261012d60209081526040918290208251608081018452905463ffffffff80821683526401000000008204169282019290925268010000000000000000820460ff1692810192909252690100000000000000000090046001600160a01b0316606082018190521561123b576040517f0dc1019700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061124c84848d8d8d8d8d612b3f565b905060008160a0015164ffffffffff16426112679190614e34565b905063ffffffff85168110156112a9576040517f5e5728e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806112c98870ffffffffffffffffffffffffffffffffff16612db1565b60018111156112da576112da614693565b036113135760006112f26112ed8a612de4565b612df0565b905061130088858c84612e31565b915061130b81612fd1565b925050611329565b61132687846113218b612de4565b612fe2565b90505b845163ffffffff1660000361147e5763ffffffff606088901c81168652608085015116602086015260ff8a166040860152801561136b573360608601526113a3565b600086815261012e6020526040902080547fffffffffffffffffffffffff000000000000000000000000000000000000000016331790555b600086815261012d602090815260409182902087518154928901519389015160608a01516001600160a01b03166901000000000000000000027fffffff0000000000000000000000000000000000000000ffffffffffffffffff60ff9092166801000000000000000002919091167fffffff000000000000000000000000000000000000000000ffffffffffffffff63ffffffff968716640100000000027fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000009096169690931695909517939093171692909217179055611597565b806114b5576040517f589a41b700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360608601908152600087815261012d602090815260409182902088518154928a0151938a015194516001600160a01b03166901000000000000000000027fffffff0000000000000000000000000000000000000000ffffffffffffffffff60ff9096166801000000000000000002959095167fffffff000000000000000000000000000000000000000000ffffffffffffffff63ffffffff958616640100000000027fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090951695909216949094179290921791909116919091179190911790555b6040518115158152869063ffffffff60608a901c16907f39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b9060200160405180910390a36115ef846000015185602001518885896130f1565b61162d5760408051878152602081018490527f22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016910160405180910390a15b505050505050505061163f600160fb55565b50505050505050565b600054610100900460ff16158080156116685750600054600160ff909116105b806116825750303b158015611682575060005460ff166001145b6116f45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161106e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561175257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61175a61320d565b611762613292565b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff16146118985761015f8290556040517f58668176000000000000000000000000000000000000000000000000000000008152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635866817690602401600060405180830381600087803b15801561183657600080fd5b505af115801561184a573d6000803e3d6000fd5b50505050611856612967565b610160805464ffffffffff9290921665010000000000027fffffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffff9092169190911790555b80156118fb57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611961576040517ff79626c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061196b612967565b9050600060405180606001604052806001600281111561198d5761198d614693565b815264ffffffffff84166020808301919091526000604092830181905263ffffffff8816815260c99091522081518154929350839282907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660018360028111156119fa576119fa614693565b0217905550602082810151825460409485015164ffffffffff9081166601000000000000027fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffffff9190931661010002167fffffffffffffffffffffffffffffffffffffffffff00000000000000000000ff909116171790915563ffffffff8516600090815260c990915220815181548392919082907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001836002811115611ac457611ac4614693565b0217905550602082015181546040909301517fffffffffffffffffffffffffffffffffffffffffff00000000000000000000ff90931661010064ffffffffff928316027fffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffffff16176601000000000000919093160291909117905550505050565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff1603611b9e5750600090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166336cba43c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c229190614d39565b61015f54909150808203611c395760009250505090565b604080516060810182526101605464ffffffffff80821683526501000000000082041660208301526a0100000000000000000000900463ffffffff1691810182905290611c859061221c565b15611c9657505061015f5550600090565b611ca38160400151612251565b15611cb2576001935050505090565b60208101514290611cc7906201518090614e47565b64ffffffffff161115611cde576001935050505090565b6040517f58668176000000000000000000000000000000000000000000000000000000008152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635866817690602401600060405180830381600087803b158015611d5957600080fd5b505af1158015611d6d573d6000803e3d6000fd5b505050506000935050505090565b63ffffffff818116600090815261016360209081526040808320815160608101835290546bffffffffffffffffffffffff811682526c0100000000000000000000000081049095169281019290925270010000000000000000000000000000000090930464ffffffffff16928101839052909182919015801590611e095750611e07816020015161221c565b155b8015611e1f5750611e1d8160200151612251565b155b15611e425780516040820151909350611e3f9064ffffffffff1642614e34565b91505b50915091565b600081815261012d602090815260408083208151608081018352905463ffffffff80821680845264010000000083049091169483019490945268010000000000000000810460ff169282019290925269010000000000000000009091046001600160a01b03166060808301919091529290919003611ed6575050604080516020810190915260008152919050565b611ee08382613317565b9392505050565b604080516060810182526000808252602082018190529181019190915263ffffffff8216600090815260c96020526040908190208151606081019092528054829060ff166002811115611f3c57611f3c614693565b6002811115611f4d57611f4d614693565b8152905464ffffffffff61010082048116602084015266010000000000009091041660409091015292915050565b60006105e6611f898361348b565b61349e565b611f96612972565b606580546001600160a01b0383167fffffffffffffffffffffffff00000000000000000000000000000000000000009091168117909155611fdf6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6000610d5a465b600063ffffffff82111561209a5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201527f3220626974730000000000000000000000000000000000000000000000000000606482015260840161106e565b5090565b60408051606081018252600080825260208201819052918101919091526040517f28f3fac90000000000000000000000000000000000000000000000000000000081526001600160a01b0383811660048301527f000000000000000000000000000000000000000000000000000000000000000016906328f3fac990602401606060405180830381865afa15801561213a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e69190614ee8565b604080516060810182526000808252602082018190529181018290526040517f2de5aaf7000000000000000000000000000000000000000000000000000000008152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632de5aaf790602401608060405180830381865afa1580156121f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091f9190614f04565b60008063ffffffff8316600090815260c9602052604090205460ff16600281111561224957612249614693565b141592915050565b63ffffffff8116600090815260c96020526040808220815160608101909252805483929190829060ff16600281111561228c5761228c614693565b600281111561229d5761229d614693565b8152905464ffffffffff61010082048116602084015266010000000000009091041660409091015290506000815160028111156122dc576122dc614693565b146122ea5750600092915050565b806020015164ffffffffff166000036123065750600092915050565b60408101516123189061a8c090614e47565b64ffffffffff1642109392505050565b60006105e661233683613749565b61375c565b60006105e660406004845b919061379d565b6000612358846137be565b60008181526101306020526040902054909150760100000000000000000000000000000000000000000000900464ffffffffff16156123c3576040517fa789712900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040518060e001604052808463ffffffff1681526020016123e38661233b565b63ffffffff1681526020016123f7866137cc565b64ffffffffff16815260200161240c866137db565b64ffffffffff16815260200161242761012f8054905061201e565b63ffffffff16815260200161243a612967565b64ffffffffff90811682526020918201949094526000838152610130825260408082208451815494860151928601516060870151608088015160a08901518b16760100000000000000000000000000000000000000000000027fffffffffff0000000000ffffffffffffffffffffffffffffffffffffffffffff63ffffffff928316720100000000000000000000000000000000000002167fffffffffff000000000000000000ffffffffffffffffffffffffffffffffffff938d166d0100000000000000000000000000027fffffffffffffffffffffffffffff0000000000ffffffffffffffffffffffffff95909d166801000000000000000002949094167fffffffffffffffffffffffffffff00000000000000000000ffffffffffffffff978316640100000000027fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000909a16929095169190911797909717949094169190911797909717919091169590951791909117845560c09091015160019384015561012f8054938401815590527f232da9e50dad2971456a78fb5cd6ff6b75019984d6e918139ce990999420f979909101555050565b60006105e6602080845b91906137ea565b604080516060810182526000808252602082018190529181019190915250604080516060810182526101605464ffffffffff80821683526501000000000082041660208301526a0100000000000000000000900463ffffffff169181019190915261266a612967565b64ffffffffff1681527f000000000000000000000000000000000000000000000000000000000000000063ffffffff9081167f000000000000000000000000000000000000000000000000000000000000000091909116148015906126cd575083155b80156126dc57508261015f5414155b15611ee0576126e9612967565b64ffffffffff16602082015263ffffffff821660408083019190915261015f849055517fc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa39061273b9085815260200190565b60405180910390a19392505050565b815160005b8181101561296157600084828151811061276b5761276b614c9c565b602002602001015190506000612790826fffffffffffffffffffffffffffffffff1690565b90507f000000000000000000000000000000000000000000000000000000000000000063ffffffff168163ffffffff16036127cc57505061294f565b63ffffffff81811660009081526101636020908152604091829020825160608101845290546bffffffffffffffffffffffff8082168084526c0100000000000000000000000083049096168385015270010000000000000000000000000000000090910464ffffffffff1693820193909352929085901c909116908103612856575050505061294f565b6040518060600160405280826bffffffffffffffffffffffff1681526020018863ffffffff168152602001612889612967565b64ffffffffff90811690915263ffffffff9485166000908152610163602090815260409182902084518154928601519590930151909316700100000000000000000000000000000000027fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff949097166c01000000000000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091166bffffffffffffffffffffffff909216919091171791909116939093179092555050505b8061295981614f3a565b91505061274f565b50505050565b6000610d5a426138f4565b6033546001600160a01b03163314610fee5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161106e565b606580547fffffffffffffffffffffffff000000000000000000000000000000000000000016905561108081613971565b600260fb5403612a4f5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161106e565b600260fb55565b60006105e6612a6483613749565b6139db565b60006105e6612a7a82601185612346565b613a1c565b600080612a8b83612a69565b90506000612aab8270ffffffffffffffffffffffffffffffffff16612db1565b6001811115612abc57612abc614693565b03612b0057611ee0612ae78270ffffffffffffffffffffffffffffffffff1660009081526020902090565b612afb612af66112ed87612de4565b613a60565b613a86565b611ee0612b268270ffffffffffffffffffffffffffffffffff1660009081526020902090565b612afb612b3a612b3587612de4565b613ad2565b613b13565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c08101919091526000612bdc600160408b901c68ffffffffffffffffff16612b999190614f72565b63ffffffff168989898080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525060209250613b23915050565b90506000612c2b8260608c901c64ffffffffff168888808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508a9250613bcb915050565b600081815261013060209081526040808320815160e081018352815463ffffffff8082168352640100000000820481169583019590955264ffffffffff6801000000000000000082048116948301949094526d010000000000000000000000000081048416606083015272010000000000000000000000000000000000008104909416608082015276010000000000000000000000000000000000000000000090930490911660a0830181905260019091015460c083015290955091925003612d20576040517f2546f9ea00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8251612d2b9061221c565b15612d62576040517f6893014300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8251612d6d90612251565b15612da4576040517f18989d5300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050979650505050505050565b6000612dd08270ffffffffffffffffffffffffffffffffff1660801c90565b60ff1660018111156105e6576105e6614693565b600081611ee081613c2b565b6000612dfb82613c42565b61209a576040517f35c196ef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080612e3d83613c77565b905067ffffffffffffffff602082901c81169085161015612e8a576040517fed43c3a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612e9b612e9885613c93565b90565b90508467ffffffffffffffff165a11612ee0576040517faa6c898500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000606088901c64ffffffffff16604089901c68ffffffffffffffffff16612f07876125f0565b8977ffffffffffffffffffffffffffffffffffffffffffffffff8716612f34612f2f8b613ca2565b613cc5565b604051602401612f4996959493929190614f8f565b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f032f287e000000000000000000000000000000000000000000000000000000001790529050612fc36001600160a01b03831667ffffffffffffffff8816600084613d04565b93505050505b949350505050565b60006105e6612e9882602085612346565b600080612fee83613ad2565b90506000613031606087901c64ffffffffff166040805163ffffffff9092166020830152810187905260600160408051601f198184030181529190528390613d36565b905060006130686001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683613e64565b9050805160201415806130ad575061307f83613ea8565b7fffffffff00000000000000000000000000000000000000000000000000000000166130aa82614fcc565b14155b156130e4576040517ff8b4221800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060019695505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff161461314e57506000610bc4565b8260000361315e57506000610bc4565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636b47b3bc87878661319a8988613317565b6040518563ffffffff1660e01b81526004016131b9949392919061500e565b6020604051808303816000875af11580156131d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131fc919061503d565b9695505050505050565b600160fb55565b600054610100900460ff1661328a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b610fee613eb7565b600054610100900460ff1661330f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b610fee613f3d565b600082815261012e60205260409020546060906001600160a01b03168061333f575060608201515b600061012f846020015163ffffffff168154811061335f5761335f614c9c565b6000918252602080832090910154808352610130909152604082205490925061338d9063ffffffff1661215e565b5085516040808801516060808a0151835160e095861b7fffffffff0000000000000000000000000000000000000000000000000000000090811660208301527f000000000000000000000000000000000000000000000000000000000000000090961b9095166024860152602885018c90526048850188905260f89290921b7fff0000000000000000000000000000000000000000000000000000000000000016606885015284811b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000908116606986015288821b8116607d86015291901b1660918301528051608581840301815260a590920190529091506131fc565b60006105e661349983613749565b613fba565b60007f000000000000000000000000000000000000000000000000000000000000000063ffffffff166134d083613ffb565b63ffffffff161461350d576040517fa752c23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061351883614009565b600081815261012d602090815260408083208151608081018352905463ffffffff80821680845264010000000083049091169483019490945268010000000000000000810460ff169282019290925269010000000000000000009091046001600160a01b031660608201529293509003613596575060009392505050565b805163ffffffff166135a785614018565b63ffffffff161415806135cc5750806040015160ff166135c685614026565b60ff1614155b156135db575060009392505050565b60006135e685614035565b60008181526101306020526040812054919250906136099063ffffffff1661215e565b50905061012f836020015163ffffffff168154811061362a5761362a614c9c565b90600052602060002001548214158061365d5750806001600160a01b031661365187614044565b6001600160a01b031614155b1561366e5750600095945050505050565b600084815261012e60205260409020546001600160a01b0316806136e15783606001516001600160a01b03166136a388614053565b6001600160a01b03161480156136d6575083606001516001600160a01b03166136cb88614060565b6001600160a01b0316145b979650505050505050565b60006136ec88614060565b9050816001600160a01b031661370189614053565b6001600160a01b031614801561373d57506001600160a01b038116158061373d575084606001516001600160a01b0316816001600160a01b0316145b98975050505050505050565b805160009060208301612fc9818361406d565b6000613767826140d0565b61209a576040517feb92662c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806137ab8585856137ea565b602084900360031b1c9150509392505050565b60006105e6816020846125fa565b60006105e66044600584612346565b60006105e66049600584612346565b6000816000036137fc57506000611ee0565b6020821115613837576040517f31d784a800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6fffffffffffffffffffffffffffffffff8416613854838561505f565b111561388c576040517fa3b99ded00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600382901b600061389d8660801c90565b909401517f80000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff929092019190911d16949350505050565b600064ffffffffff82111561209a5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203460448201527f3020626974730000000000000000000000000000000000000000000000000000606482015260840161106e565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006139e6826140ef565b61209a576040517fd082b2a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600160ff608084901c16111561209a576040517f58ebbfbe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105e6613a7d613a7184612fd1565b60009081526020902090565b612afb846141a4565b600082158015613a94575081155b15613aa1575060006105e6565b60408051602081018590529081018390526060016040516020818303038152906040528051906020012090506105e6565b6000613add826141b4565b61209a576040517f9d46362800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105e6826141f0565b6141f0565b815160009082811115613b62576040517fc5360feb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84915060005b81811015613b9f57613b9583868381518110613b8657613b86614c9c565b6020026020010151898461421b565b9250600101613b68565b50805b83811015613bc157613bb7836000898461421b565b9250600101613ba2565b5050949350505050565b60006101fe600183901b1660408110613c10576040517f1390f2a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000613c1c8787614244565b90506136d68282876006613b23565b60006105e6613c3b60118361505f565b83906142a5565b60006018613c526020604061505f565b613c5c919061505f565b6fffffffffffffffffffffffffffffffff8316101592915050565b60006105e6612e98613c8b6020604061505f565b601885612346565b60006105e660406020846125fa565b60006105e66018613cb56020604061505f565b613c3b919061505f565b906142a5565b60405180613cd6836020830161430b565b506fffffffffffffffffffffffffffffffff83166000601f8201601f19168301602001604052509052919050565b6000846001600160a01b03163b600003613d2057506000612fc9565b600080835160208501868989f195945050505050565b6060613d448251601f161590565b613d7a576040517fd49e9d1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805160038082526080820190925260009160208201606080368337019050509050613dec613da985613ea8565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091166020820152602401604051602081830303815290604052613749565b81600081518110613dff57613dff614c9c565b602002602001018181525050613e1483613749565b81600181518110613e2757613e27614c9c565b602002602001018181525050613e3c846143b4565b81600281518110613e4f57613e4f614c9c565b602002602001018181525050612fc9816143c2565b6060611ee0838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250614400565b600081611ee0818360046137ea565b600054610100900460ff16613f345760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b610fee336129cc565b600054610100900460ff166132065760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161106e565b6000613fc5826144e7565b61209a576040517f76b4e13c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105e660048084612346565b60006105e660086020846125fa565b60006105e681600484612346565b60006105e66048600184612346565b60006105e660286020846125fa565b60006105e66049835b90614503565b60006105e6605d8361404d565b60006105e660718361404d565b60008061407a838561505f565b905060405181111561408a575060005b806000036140c4576040517f10bef38600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b608084901b8317612fc9565b6000604e6fffffffffffffffffffffffffffffffff83165b1492915050565b60006fffffffffffffffffffffffffffffffff821661410f60118361505f565b81101561411f5750600092915050565b600061412a84614511565b9050600160ff608083901c161115614146575060009392505050565b600061416c61415483613a1c565b70ffffffffffffffffffffffffffffffffff16612db1565b600181111561417d5761417d614693565b0361419357612fc961418e85613c2b565b613c42565b612fc961419f85613c2b565b6141b4565b60006105e6613b1e602084613cbf565b60006fffffffffffffffffffffffffffffffff821660048110156141db5750600092915050565b611ee06141e9600483614e34565b601f161590565b6000806141fd8360801c90565b6fffffffffffffffffffffffffffffffff9390931690922092915050565b6000600183831c16810361423a576142338585613a86565b9050612fc9565b6142338486613a86565b6000828260405160200161428792919091825260e01b7fffffffff0000000000000000000000000000000000000000000000000000000016602082015260240190565b60405160208183030381529060405280519060200120905092915050565b60006fffffffffffffffffffffffffffffffff8316808311156142f4576040517fa3b99ded00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612fc9836143028660801c90565b0184830361406d565b6040516000906fffffffffffffffffffffffffffffffff841690608085901c9080851015614365576040517f4b2a158c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008386858560045afa9050806143a8576040517f7c7d772f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b608086901b84176136d6565b600081611ee08160046142a5565b6040518060006143d5846020840161451f565b6fffffffffffffffffffffffffffffffff16601f8101601f1916830160200160405290915250919050565b6060824710156144785760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c0000000000000000000000000000000000000000000000000000606482015260840161106e565b600080866001600160a01b031685876040516144949190615072565b60006040518083038185875af1925050503d80600081146144d1576040519150601f19603f3d011682016040523d82523d6000602084013e6144d6565b606091505b50915091506136d6878383876145c3565b600060856fffffffffffffffffffffffffffffffff83166140e8565b6000611ee08383601461379d565b60006105e68282601161379d565b6040516000908083101561455f576040517f4b2a158c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b85518110156145b657600086828151811061458057614580614c9c565b602002602001015190506145968184880161430b565b506fffffffffffffffffffffffffffffffff169190910190600101614563565b50608084901b8117610bc4565b6060831561463257825160000361462b576001600160a01b0385163b61462b5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161106e565b5081612fc9565b612fc983838151156146475781518083602001fd5b8060405162461bcd60e51b815260040161106e91906149f5565b6001600160a01b038116811461108057600080fd5b60006020828403121561468857600080fd5b8135611ee081614661565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8051600681106146d4576146d4614693565b825260208181015163ffffffff9081169184019190915260409182015116910152565b606081016105e682846146c2565b60006020828403121561471757600080fd5b5035919050565b60005b83811015614739578181015183820152602001614721565b50506000910152565b6000815180845261475a81602086016020860161471e565b601f01601f19169290920160200192915050565b6040815260006147816040830185614742565b8281036020840152610bc48185614742565b6001600160a01b038316815260808101611ee060208301846146c2565b63ffffffff8116811461108057600080fd5b6000602082840312156147d457600080fd5b8135611ee0816147b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715614837576148376147df565b604052919050565b600067ffffffffffffffff821115614859576148596147df565b50601f01601f191660200190565b600082601f83011261487857600080fd5b813561488b6148868261483f565b61480e565b8181528460208386010111156148a057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156148d557600080fd5b85356148e0816147b0565b94506020868101359450604087013567ffffffffffffffff8082111561490557600080fd5b6149118a838b01614867565b955060608901359450608089013591508082111561492e57600080fd5b818901915089601f83011261494257600080fd5b813581811115614954576149546147df565b8060051b915061496584830161480e565b818152918301840191848101908c84111561497f57600080fd5b938501935b838510156149bf57843592506fffffffffffffffffffffffffffffffff831683146149af5760008081fd5b8282529385019390850190614984565b8096505050505050509295509295909350565b6003811061108057611080614693565b602081016149ef836149d2565b91905290565b602081526000611ee06020830184614742565b60008083601f840112614a1a57600080fd5b50813567ffffffffffffffff811115614a3257600080fd5b6020830191508360208260051b8501011115614a4d57600080fd5b9250929050565b60008060208385031215614a6757600080fd5b823567ffffffffffffffff811115614a7e57600080fd5b614a8a85828601614a08565b90969095509350505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614b1c578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805115158452870151878401879052614b0987850182614742565b9588019593505090860190600101614abd565b509098975050505050505050565b60008060408385031215614b3d57600080fd5b8235614b48816147b0565b91506020830135614b58816147b0565b809150509250929050565b600080600080600080600060a0888a031215614b7e57600080fd5b873567ffffffffffffffff80821115614b9657600080fd5b614ba28b838c01614867565b985060208a0135915080821115614bb857600080fd5b614bc48b838c01614a08565b909850965060408a0135915080821115614bdd57600080fd5b614be98b838c01614a08565b909650945060608a0135915060ff82168214614c0457600080fd5b9092506080890135908082168214614c1b57600080fd5b508091505092959891949750929550565b81516060820190614c3c816149d2565b80835250602083015164ffffffffff8082166020850152806040860151166040850152505092915050565b600060208284031215614c7957600080fd5b813567ffffffffffffffff811115614c9057600080fd5b612fc984828501614867565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060208284031215614cdd57600080fd5b815167ffffffffffffffff811115614cf457600080fd5b8201601f81018413614d0557600080fd5b8051614d136148868261483f565b818152856020838501011115614d2857600080fd5b610bc482602083016020860161471e565b600060208284031215614d4b57600080fd5b5051919050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1833603018112614d8657600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614dc557600080fd5b83018035915067ffffffffffffffff821115614de057600080fd5b602001915036819003821315614a4d57600080fd5b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156105e6576105e6614e05565b64ffffffffff818116838216019080821115614e6557614e65614e05565b5092915050565b600060608284031215614e7e57600080fd5b6040516060810181811067ffffffffffffffff82111715614ea157614ea16147df565b8060405250809150825160068110614eb857600080fd5b81526020830151614ec8816147b0565b60208201526040830151614edb816147b0565b6040919091015292915050565b600060608284031215614efa57600080fd5b611ee08383614e6c565b60008060808385031215614f1757600080fd5b8251614f2281614661565b9150614f318460208501614e6c565b90509250929050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614f6b57614f6b614e05565b5060010190565b63ffffffff828116828216039080821115614e6557614e65614e05565b600063ffffffff8089168352808816602084015286604084015285606084015280851660808401525060c060a083015261373d60c0830184614742565b80516020808301519190811015610c75577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60209190910360031b1b16919050565b600063ffffffff8087168352808616602084015250836040830152608060608301526131fc6080830184614742565b60006020828403121561504f57600080fd5b81518015158114611ee057600080fd5b808201808211156105e6576105e6614e05565b60008251614d8681846020870161471e56fea2646970667358221220a616f11f6c8333fe4015a6de25a4be94acb62d7e000bb8d6e82c4ae8429713c664736f6c63430008110033", } // DestinationHarnessABI is the input ABI used to generate the binding from. // Deprecated: Use DestinationHarnessMetaData.ABI instead. var DestinationHarnessABI = DestinationHarnessMetaData.ABI // Deprecated: Use DestinationHarnessMetaData.Sigs instead. // DestinationHarnessFuncSigs maps the 4-byte function signature to its string representation. var DestinationHarnessFuncSigs = DestinationHarnessMetaData.Sigs // DestinationHarnessBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use DestinationHarnessMetaData.Bin instead. var DestinationHarnessBin = DestinationHarnessMetaData.Bin // DeployDestinationHarness deploys a new Ethereum contract, binding an instance of DestinationHarness to it. func DeployDestinationHarness(auth *bind.TransactOpts, backend bind.ContractBackend, domain uint32, agentManager_ common.Address, inbox_ common.Address) (common.Address, *types.Transaction, *DestinationHarness, error) { parsed, err := DestinationHarnessMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(DestinationHarnessBin), backend, domain, agentManager_, inbox_) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &DestinationHarness{DestinationHarnessCaller: DestinationHarnessCaller{contract: contract}, DestinationHarnessTransactor: DestinationHarnessTransactor{contract: contract}, DestinationHarnessFilterer: DestinationHarnessFilterer{contract: contract}}, nil } // DestinationHarness is an auto generated Go binding around an Ethereum contract. type DestinationHarness struct { DestinationHarnessCaller // Read-only binding to the contract DestinationHarnessTransactor // Write-only binding to the contract DestinationHarnessFilterer // Log filterer for contract events } // DestinationHarnessCaller is an auto generated read-only Go binding around an Ethereum contract. type DestinationHarnessCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationHarnessTransactor is an auto generated write-only Go binding around an Ethereum contract. type DestinationHarnessTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationHarnessFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type DestinationHarnessFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // DestinationHarnessSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type DestinationHarnessSession struct { Contract *DestinationHarness // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // DestinationHarnessCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type DestinationHarnessCallerSession struct { Contract *DestinationHarnessCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // DestinationHarnessTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type DestinationHarnessTransactorSession struct { Contract *DestinationHarnessTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // DestinationHarnessRaw is an auto generated low-level Go binding around an Ethereum contract. type DestinationHarnessRaw struct { Contract *DestinationHarness // Generic contract binding to access the raw methods on } // DestinationHarnessCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type DestinationHarnessCallerRaw struct { Contract *DestinationHarnessCaller // Generic read-only contract binding to access the raw methods on } // DestinationHarnessTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type DestinationHarnessTransactorRaw struct { Contract *DestinationHarnessTransactor // Generic write-only contract binding to access the raw methods on } // NewDestinationHarness creates a new instance of DestinationHarness, bound to a specific deployed contract. func NewDestinationHarness(address common.Address, backend bind.ContractBackend) (*DestinationHarness, error) { contract, err := bindDestinationHarness(address, backend, backend, backend) if err != nil { return nil, err } return &DestinationHarness{DestinationHarnessCaller: DestinationHarnessCaller{contract: contract}, DestinationHarnessTransactor: DestinationHarnessTransactor{contract: contract}, DestinationHarnessFilterer: DestinationHarnessFilterer{contract: contract}}, nil } // NewDestinationHarnessCaller creates a new read-only instance of DestinationHarness, bound to a specific deployed contract. func NewDestinationHarnessCaller(address common.Address, caller bind.ContractCaller) (*DestinationHarnessCaller, error) { contract, err := bindDestinationHarness(address, caller, nil, nil) if err != nil { return nil, err } return &DestinationHarnessCaller{contract: contract}, nil } // NewDestinationHarnessTransactor creates a new write-only instance of DestinationHarness, bound to a specific deployed contract. func NewDestinationHarnessTransactor(address common.Address, transactor bind.ContractTransactor) (*DestinationHarnessTransactor, error) { contract, err := bindDestinationHarness(address, nil, transactor, nil) if err != nil { return nil, err } return &DestinationHarnessTransactor{contract: contract}, nil } // NewDestinationHarnessFilterer creates a new log filterer instance of DestinationHarness, bound to a specific deployed contract. func NewDestinationHarnessFilterer(address common.Address, filterer bind.ContractFilterer) (*DestinationHarnessFilterer, error) { contract, err := bindDestinationHarness(address, nil, nil, filterer) if err != nil { return nil, err } return &DestinationHarnessFilterer{contract: contract}, nil } // bindDestinationHarness binds a generic wrapper to an already deployed contract. func bindDestinationHarness(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := DestinationHarnessMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_DestinationHarness *DestinationHarnessRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _DestinationHarness.Contract.DestinationHarnessCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_DestinationHarness *DestinationHarnessRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationHarness.Contract.DestinationHarnessTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_DestinationHarness *DestinationHarnessRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _DestinationHarness.Contract.DestinationHarnessTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_DestinationHarness *DestinationHarnessCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _DestinationHarness.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_DestinationHarness *DestinationHarnessTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationHarness.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_DestinationHarness *DestinationHarnessTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _DestinationHarness.Contract.contract.Transact(opts, method, params...) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_DestinationHarness *DestinationHarnessCaller) AgentManager(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "agentManager") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_DestinationHarness *DestinationHarnessSession) AgentManager() (common.Address, error) { return _DestinationHarness.Contract.AgentManager(&_DestinationHarness.CallOpts) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_DestinationHarness *DestinationHarnessCallerSession) AgentManager() (common.Address, error) { return _DestinationHarness.Contract.AgentManager(&_DestinationHarness.CallOpts) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_DestinationHarness *DestinationHarnessCaller) AgentStatus(opts *bind.CallOpts, agent common.Address) (AgentStatus, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "agentStatus", agent) if err != nil { return *new(AgentStatus), err } out0 := *abi.ConvertType(out[0], new(AgentStatus)).(*AgentStatus) return out0, err } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_DestinationHarness *DestinationHarnessSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _DestinationHarness.Contract.AgentStatus(&_DestinationHarness.CallOpts, agent) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_DestinationHarness *DestinationHarnessCallerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _DestinationHarness.Contract.AgentStatus(&_DestinationHarness.CallOpts, agent) } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_DestinationHarness *DestinationHarnessCaller) AttestationsAmount(opts *bind.CallOpts) (*big.Int, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "attestationsAmount") if err != nil { return *new(*big.Int), err } out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) return out0, err } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_DestinationHarness *DestinationHarnessSession) AttestationsAmount() (*big.Int, error) { return _DestinationHarness.Contract.AttestationsAmount(&_DestinationHarness.CallOpts) } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_DestinationHarness *DestinationHarnessCallerSession) AttestationsAmount() (*big.Int, error) { return _DestinationHarness.Contract.AttestationsAmount(&_DestinationHarness.CallOpts) } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_DestinationHarness *DestinationHarnessCaller) DestStatus(opts *bind.CallOpts) (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "destStatus") outstruct := new(struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }) if err != nil { return *outstruct, err } outstruct.SnapRootTime = *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) outstruct.AgentRootTime = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) outstruct.NotaryIndex = *abi.ConvertType(out[2], new(uint32)).(*uint32) return *outstruct, err } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_DestinationHarness *DestinationHarnessSession) DestStatus() (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { return _DestinationHarness.Contract.DestStatus(&_DestinationHarness.CallOpts) } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_DestinationHarness *DestinationHarnessCallerSession) DestStatus() (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { return _DestinationHarness.Contract.DestStatus(&_DestinationHarness.CallOpts) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_DestinationHarness *DestinationHarnessCaller) GetAgent(opts *bind.CallOpts, index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "getAgent", index) outstruct := new(struct { Agent common.Address Status AgentStatus }) if err != nil { return *outstruct, err } outstruct.Agent = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Status = *abi.ConvertType(out[1], new(AgentStatus)).(*AgentStatus) return *outstruct, err } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_DestinationHarness *DestinationHarnessSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _DestinationHarness.Contract.GetAgent(&_DestinationHarness.CallOpts, index) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_DestinationHarness *DestinationHarnessCallerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _DestinationHarness.Contract.GetAgent(&_DestinationHarness.CallOpts, index) } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_DestinationHarness *DestinationHarnessCaller) GetAttestation(opts *bind.CallOpts, index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "getAttestation", index) outstruct := new(struct { AttPayload []byte AttSignature []byte }) if err != nil { return *outstruct, err } outstruct.AttPayload = *abi.ConvertType(out[0], new([]byte)).(*[]byte) outstruct.AttSignature = *abi.ConvertType(out[1], new([]byte)).(*[]byte) return *outstruct, err } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_DestinationHarness *DestinationHarnessSession) GetAttestation(index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { return _DestinationHarness.Contract.GetAttestation(&_DestinationHarness.CallOpts, index) } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_DestinationHarness *DestinationHarnessCallerSession) GetAttestation(index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { return _DestinationHarness.Contract.GetAttestation(&_DestinationHarness.CallOpts, index) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_DestinationHarness *DestinationHarnessCaller) GetAttestationNonce(opts *bind.CallOpts, snapRoot [32]byte) (uint32, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "getAttestationNonce", snapRoot) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_DestinationHarness *DestinationHarnessSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _DestinationHarness.Contract.GetAttestationNonce(&_DestinationHarness.CallOpts, snapRoot) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_DestinationHarness *DestinationHarnessCallerSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _DestinationHarness.Contract.GetAttestationNonce(&_DestinationHarness.CallOpts, snapRoot) } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_DestinationHarness *DestinationHarnessCaller) GetGasData(opts *bind.CallOpts, domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "getGasData", domain) outstruct := new(struct { GasData *big.Int DataMaturity *big.Int }) if err != nil { return *outstruct, err } outstruct.GasData = *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) outstruct.DataMaturity = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) return *outstruct, err } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_DestinationHarness *DestinationHarnessSession) GetGasData(domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { return _DestinationHarness.Contract.GetGasData(&_DestinationHarness.CallOpts, domain) } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_DestinationHarness *DestinationHarnessCallerSession) GetGasData(domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { return _DestinationHarness.Contract.GetGasData(&_DestinationHarness.CallOpts, domain) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_DestinationHarness *DestinationHarnessCaller) Inbox(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "inbox") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_DestinationHarness *DestinationHarnessSession) Inbox() (common.Address, error) { return _DestinationHarness.Contract.Inbox(&_DestinationHarness.CallOpts) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_DestinationHarness *DestinationHarnessCallerSession) Inbox() (common.Address, error) { return _DestinationHarness.Contract.Inbox(&_DestinationHarness.CallOpts) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_DestinationHarness *DestinationHarnessCaller) IsValidReceipt(opts *bind.CallOpts, rcptPayload []byte) (bool, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "isValidReceipt", rcptPayload) if err != nil { return *new(bool), err } out0 := *abi.ConvertType(out[0], new(bool)).(*bool) return out0, err } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_DestinationHarness *DestinationHarnessSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _DestinationHarness.Contract.IsValidReceipt(&_DestinationHarness.CallOpts, rcptPayload) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_DestinationHarness *DestinationHarnessCallerSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _DestinationHarness.Contract.IsValidReceipt(&_DestinationHarness.CallOpts, rcptPayload) } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 ) view returns(uint32) func (_DestinationHarness *DestinationHarnessCaller) LastAttestationNonce(opts *bind.CallOpts, arg0 uint32) (uint32, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "lastAttestationNonce", arg0) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 ) view returns(uint32) func (_DestinationHarness *DestinationHarnessSession) LastAttestationNonce(arg0 uint32) (uint32, error) { return _DestinationHarness.Contract.LastAttestationNonce(&_DestinationHarness.CallOpts, arg0) } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 ) view returns(uint32) func (_DestinationHarness *DestinationHarnessCallerSession) LastAttestationNonce(arg0 uint32) (uint32, error) { return _DestinationHarness.Contract.LastAttestationNonce(&_DestinationHarness.CallOpts, arg0) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_DestinationHarness *DestinationHarnessCaller) LatestDisputeStatus(opts *bind.CallOpts, agentIndex uint32) (DisputeStatus, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "latestDisputeStatus", agentIndex) if err != nil { return *new(DisputeStatus), err } out0 := *abi.ConvertType(out[0], new(DisputeStatus)).(*DisputeStatus) return out0, err } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_DestinationHarness *DestinationHarnessSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _DestinationHarness.Contract.LatestDisputeStatus(&_DestinationHarness.CallOpts, agentIndex) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_DestinationHarness *DestinationHarnessCallerSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _DestinationHarness.Contract.LatestDisputeStatus(&_DestinationHarness.CallOpts, agentIndex) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_DestinationHarness *DestinationHarnessCaller) LocalDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "localDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_DestinationHarness *DestinationHarnessSession) LocalDomain() (uint32, error) { return _DestinationHarness.Contract.LocalDomain(&_DestinationHarness.CallOpts) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_DestinationHarness *DestinationHarnessCallerSession) LocalDomain() (uint32, error) { return _DestinationHarness.Contract.LocalDomain(&_DestinationHarness.CallOpts) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_DestinationHarness *DestinationHarnessCaller) MessageReceipt(opts *bind.CallOpts, messageHash [32]byte) ([]byte, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "messageReceipt", messageHash) if err != nil { return *new([]byte), err } out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) return out0, err } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_DestinationHarness *DestinationHarnessSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _DestinationHarness.Contract.MessageReceipt(&_DestinationHarness.CallOpts, messageHash) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_DestinationHarness *DestinationHarnessCallerSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _DestinationHarness.Contract.MessageReceipt(&_DestinationHarness.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_DestinationHarness *DestinationHarnessCaller) MessageStatus(opts *bind.CallOpts, messageHash [32]byte) (uint8, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "messageStatus", messageHash) if err != nil { return *new(uint8), err } out0 := *abi.ConvertType(out[0], new(uint8)).(*uint8) return out0, err } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_DestinationHarness *DestinationHarnessSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _DestinationHarness.Contract.MessageStatus(&_DestinationHarness.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_DestinationHarness *DestinationHarnessCallerSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _DestinationHarness.Contract.MessageStatus(&_DestinationHarness.CallOpts, messageHash) } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_DestinationHarness *DestinationHarnessCaller) NextAgentRoot(opts *bind.CallOpts) ([32]byte, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "nextAgentRoot") if err != nil { return *new([32]byte), err } out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) return out0, err } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_DestinationHarness *DestinationHarnessSession) NextAgentRoot() ([32]byte, error) { return _DestinationHarness.Contract.NextAgentRoot(&_DestinationHarness.CallOpts) } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_DestinationHarness *DestinationHarnessCallerSession) NextAgentRoot() ([32]byte, error) { return _DestinationHarness.Contract.NextAgentRoot(&_DestinationHarness.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_DestinationHarness *DestinationHarnessCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_DestinationHarness *DestinationHarnessSession) Owner() (common.Address, error) { return _DestinationHarness.Contract.Owner(&_DestinationHarness.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_DestinationHarness *DestinationHarnessCallerSession) Owner() (common.Address, error) { return _DestinationHarness.Contract.Owner(&_DestinationHarness.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_DestinationHarness *DestinationHarnessCaller) PendingOwner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "pendingOwner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_DestinationHarness *DestinationHarnessSession) PendingOwner() (common.Address, error) { return _DestinationHarness.Contract.PendingOwner(&_DestinationHarness.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_DestinationHarness *DestinationHarnessCallerSession) PendingOwner() (common.Address, error) { return _DestinationHarness.Contract.PendingOwner(&_DestinationHarness.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_DestinationHarness *DestinationHarnessCaller) SynapseDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "synapseDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_DestinationHarness *DestinationHarnessSession) SynapseDomain() (uint32, error) { return _DestinationHarness.Contract.SynapseDomain(&_DestinationHarness.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_DestinationHarness *DestinationHarnessCallerSession) SynapseDomain() (uint32, error) { return _DestinationHarness.Contract.SynapseDomain(&_DestinationHarness.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_DestinationHarness *DestinationHarnessCaller) Version(opts *bind.CallOpts) (string, error) { var out []interface{} err := _DestinationHarness.contract.Call(opts, &out, "version") if err != nil { return *new(string), err } out0 := *abi.ConvertType(out[0], new(string)).(*string) return out0, err } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_DestinationHarness *DestinationHarnessSession) Version() (string, error) { return _DestinationHarness.Contract.Version(&_DestinationHarness.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_DestinationHarness *DestinationHarnessCallerSession) Version() (string, error) { return _DestinationHarness.Contract.Version(&_DestinationHarness.CallOpts) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_DestinationHarness *DestinationHarnessTransactor) AcceptAttestation(opts *bind.TransactOpts, notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "acceptAttestation", notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_DestinationHarness *DestinationHarnessSession) AcceptAttestation(notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _DestinationHarness.Contract.AcceptAttestation(&_DestinationHarness.TransactOpts, notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_DestinationHarness *DestinationHarnessTransactorSession) AcceptAttestation(notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _DestinationHarness.Contract.AcceptAttestation(&_DestinationHarness.TransactOpts, notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_DestinationHarness *DestinationHarnessTransactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "acceptOwnership") } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_DestinationHarness *DestinationHarnessSession) AcceptOwnership() (*types.Transaction, error) { return _DestinationHarness.Contract.AcceptOwnership(&_DestinationHarness.TransactOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_DestinationHarness *DestinationHarnessTransactorSession) AcceptOwnership() (*types.Transaction, error) { return _DestinationHarness.Contract.AcceptOwnership(&_DestinationHarness.TransactOpts) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_DestinationHarness *DestinationHarnessTransactor) Execute(opts *bind.TransactOpts, msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "execute", msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_DestinationHarness *DestinationHarnessSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _DestinationHarness.Contract.Execute(&_DestinationHarness.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_DestinationHarness *DestinationHarnessTransactorSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _DestinationHarness.Contract.Execute(&_DestinationHarness.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Initialize is a paid mutator transaction binding the contract method 0x9498bd71. // // Solidity: function initialize(bytes32 agentRoot) returns() func (_DestinationHarness *DestinationHarnessTransactor) Initialize(opts *bind.TransactOpts, agentRoot [32]byte) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "initialize", agentRoot) } // Initialize is a paid mutator transaction binding the contract method 0x9498bd71. // // Solidity: function initialize(bytes32 agentRoot) returns() func (_DestinationHarness *DestinationHarnessSession) Initialize(agentRoot [32]byte) (*types.Transaction, error) { return _DestinationHarness.Contract.Initialize(&_DestinationHarness.TransactOpts, agentRoot) } // Initialize is a paid mutator transaction binding the contract method 0x9498bd71. // // Solidity: function initialize(bytes32 agentRoot) returns() func (_DestinationHarness *DestinationHarnessTransactorSession) Initialize(agentRoot [32]byte) (*types.Transaction, error) { return _DestinationHarness.Contract.Initialize(&_DestinationHarness.TransactOpts, agentRoot) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_DestinationHarness *DestinationHarnessTransactor) Multicall(opts *bind.TransactOpts, calls []MultiCallableCall) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "multicall", calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_DestinationHarness *DestinationHarnessSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _DestinationHarness.Contract.Multicall(&_DestinationHarness.TransactOpts, calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_DestinationHarness *DestinationHarnessTransactorSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _DestinationHarness.Contract.Multicall(&_DestinationHarness.TransactOpts, calls) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_DestinationHarness *DestinationHarnessTransactor) OpenDispute(opts *bind.TransactOpts, guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "openDispute", guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_DestinationHarness *DestinationHarnessSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _DestinationHarness.Contract.OpenDispute(&_DestinationHarness.TransactOpts, guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_DestinationHarness *DestinationHarnessTransactorSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _DestinationHarness.Contract.OpenDispute(&_DestinationHarness.TransactOpts, guardIndex, notaryIndex) } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_DestinationHarness *DestinationHarnessTransactor) PassAgentRoot(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "passAgentRoot") } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_DestinationHarness *DestinationHarnessSession) PassAgentRoot() (*types.Transaction, error) { return _DestinationHarness.Contract.PassAgentRoot(&_DestinationHarness.TransactOpts) } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_DestinationHarness *DestinationHarnessTransactorSession) PassAgentRoot() (*types.Transaction, error) { return _DestinationHarness.Contract.PassAgentRoot(&_DestinationHarness.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_DestinationHarness *DestinationHarnessTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_DestinationHarness *DestinationHarnessSession) RenounceOwnership() (*types.Transaction, error) { return _DestinationHarness.Contract.RenounceOwnership(&_DestinationHarness.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_DestinationHarness *DestinationHarnessTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _DestinationHarness.Contract.RenounceOwnership(&_DestinationHarness.TransactOpts) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_DestinationHarness *DestinationHarnessTransactor) ResolveDispute(opts *bind.TransactOpts, slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "resolveDispute", slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_DestinationHarness *DestinationHarnessSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _DestinationHarness.Contract.ResolveDispute(&_DestinationHarness.TransactOpts, slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_DestinationHarness *DestinationHarnessTransactorSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _DestinationHarness.Contract.ResolveDispute(&_DestinationHarness.TransactOpts, slashedIndex, rivalIndex) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_DestinationHarness *DestinationHarnessTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _DestinationHarness.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_DestinationHarness *DestinationHarnessSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _DestinationHarness.Contract.TransferOwnership(&_DestinationHarness.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_DestinationHarness *DestinationHarnessTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _DestinationHarness.Contract.TransferOwnership(&_DestinationHarness.TransactOpts, newOwner) } // DestinationHarnessAgentRootAcceptedIterator is returned from FilterAgentRootAccepted and is used to iterate over the raw logs and unpacked data for AgentRootAccepted events raised by the DestinationHarness contract. type DestinationHarnessAgentRootAcceptedIterator struct { Event *DestinationHarnessAgentRootAccepted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationHarnessAgentRootAcceptedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationHarnessAgentRootAccepted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationHarnessAgentRootAccepted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationHarnessAgentRootAcceptedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationHarnessAgentRootAcceptedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationHarnessAgentRootAccepted represents a AgentRootAccepted event raised by the DestinationHarness contract. type DestinationHarnessAgentRootAccepted struct { AgentRoot [32]byte Raw types.Log // Blockchain specific contextual infos } // FilterAgentRootAccepted is a free log retrieval operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_DestinationHarness *DestinationHarnessFilterer) FilterAgentRootAccepted(opts *bind.FilterOpts) (*DestinationHarnessAgentRootAcceptedIterator, error) { logs, sub, err := _DestinationHarness.contract.FilterLogs(opts, "AgentRootAccepted") if err != nil { return nil, err } return &DestinationHarnessAgentRootAcceptedIterator{contract: _DestinationHarness.contract, event: "AgentRootAccepted", logs: logs, sub: sub}, nil } // WatchAgentRootAccepted is a free log subscription operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_DestinationHarness *DestinationHarnessFilterer) WatchAgentRootAccepted(opts *bind.WatchOpts, sink chan<- *DestinationHarnessAgentRootAccepted) (event.Subscription, error) { logs, sub, err := _DestinationHarness.contract.WatchLogs(opts, "AgentRootAccepted") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationHarnessAgentRootAccepted) if err := _DestinationHarness.contract.UnpackLog(event, "AgentRootAccepted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseAgentRootAccepted is a log parse operation binding the contract event 0xc8ba82607c756c8ae67c7e47c27ade0b0718d492495044a1f8619663f26ebaa3. // // Solidity: event AgentRootAccepted(bytes32 agentRoot) func (_DestinationHarness *DestinationHarnessFilterer) ParseAgentRootAccepted(log types.Log) (*DestinationHarnessAgentRootAccepted, error) { event := new(DestinationHarnessAgentRootAccepted) if err := _DestinationHarness.contract.UnpackLog(event, "AgentRootAccepted", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationHarnessExecutedIterator is returned from FilterExecuted and is used to iterate over the raw logs and unpacked data for Executed events raised by the DestinationHarness contract. type DestinationHarnessExecutedIterator struct { Event *DestinationHarnessExecuted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationHarnessExecutedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationHarnessExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationHarnessExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationHarnessExecutedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationHarnessExecutedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationHarnessExecuted represents a Executed event raised by the DestinationHarness contract. type DestinationHarnessExecuted struct { RemoteDomain uint32 MessageHash [32]byte Success bool Raw types.Log // Blockchain specific contextual infos } // FilterExecuted is a free log retrieval operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_DestinationHarness *DestinationHarnessFilterer) FilterExecuted(opts *bind.FilterOpts, remoteDomain []uint32, messageHash [][32]byte) (*DestinationHarnessExecutedIterator, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _DestinationHarness.contract.FilterLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return &DestinationHarnessExecutedIterator{contract: _DestinationHarness.contract, event: "Executed", logs: logs, sub: sub}, nil } // WatchExecuted is a free log subscription operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_DestinationHarness *DestinationHarnessFilterer) WatchExecuted(opts *bind.WatchOpts, sink chan<- *DestinationHarnessExecuted, remoteDomain []uint32, messageHash [][32]byte) (event.Subscription, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _DestinationHarness.contract.WatchLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationHarnessExecuted) if err := _DestinationHarness.contract.UnpackLog(event, "Executed", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseExecuted is a log parse operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_DestinationHarness *DestinationHarnessFilterer) ParseExecuted(log types.Log) (*DestinationHarnessExecuted, error) { event := new(DestinationHarnessExecuted) if err := _DestinationHarness.contract.UnpackLog(event, "Executed", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationHarnessInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the DestinationHarness contract. type DestinationHarnessInitializedIterator struct { Event *DestinationHarnessInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationHarnessInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationHarnessInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationHarnessInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationHarnessInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationHarnessInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationHarnessInitialized represents a Initialized event raised by the DestinationHarness contract. type DestinationHarnessInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_DestinationHarness *DestinationHarnessFilterer) FilterInitialized(opts *bind.FilterOpts) (*DestinationHarnessInitializedIterator, error) { logs, sub, err := _DestinationHarness.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &DestinationHarnessInitializedIterator{contract: _DestinationHarness.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_DestinationHarness *DestinationHarnessFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *DestinationHarnessInitialized) (event.Subscription, error) { logs, sub, err := _DestinationHarness.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationHarnessInitialized) if err := _DestinationHarness.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_DestinationHarness *DestinationHarnessFilterer) ParseInitialized(log types.Log) (*DestinationHarnessInitialized, error) { event := new(DestinationHarnessInitialized) if err := _DestinationHarness.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationHarnessOwnershipTransferStartedIterator is returned from FilterOwnershipTransferStarted and is used to iterate over the raw logs and unpacked data for OwnershipTransferStarted events raised by the DestinationHarness contract. type DestinationHarnessOwnershipTransferStartedIterator struct { Event *DestinationHarnessOwnershipTransferStarted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationHarnessOwnershipTransferStartedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationHarnessOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationHarnessOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationHarnessOwnershipTransferStartedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationHarnessOwnershipTransferStartedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationHarnessOwnershipTransferStarted represents a OwnershipTransferStarted event raised by the DestinationHarness contract. type DestinationHarnessOwnershipTransferStarted struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferStarted is a free log retrieval operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_DestinationHarness *DestinationHarnessFilterer) FilterOwnershipTransferStarted(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*DestinationHarnessOwnershipTransferStartedIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _DestinationHarness.contract.FilterLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &DestinationHarnessOwnershipTransferStartedIterator{contract: _DestinationHarness.contract, event: "OwnershipTransferStarted", logs: logs, sub: sub}, nil } // WatchOwnershipTransferStarted is a free log subscription operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_DestinationHarness *DestinationHarnessFilterer) WatchOwnershipTransferStarted(opts *bind.WatchOpts, sink chan<- *DestinationHarnessOwnershipTransferStarted, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _DestinationHarness.contract.WatchLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationHarnessOwnershipTransferStarted) if err := _DestinationHarness.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferStarted is a log parse operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_DestinationHarness *DestinationHarnessFilterer) ParseOwnershipTransferStarted(log types.Log) (*DestinationHarnessOwnershipTransferStarted, error) { event := new(DestinationHarnessOwnershipTransferStarted) if err := _DestinationHarness.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationHarnessOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the DestinationHarness contract. type DestinationHarnessOwnershipTransferredIterator struct { Event *DestinationHarnessOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationHarnessOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationHarnessOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationHarnessOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationHarnessOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationHarnessOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationHarnessOwnershipTransferred represents a OwnershipTransferred event raised by the DestinationHarness contract. type DestinationHarnessOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_DestinationHarness *DestinationHarnessFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*DestinationHarnessOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _DestinationHarness.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &DestinationHarnessOwnershipTransferredIterator{contract: _DestinationHarness.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_DestinationHarness *DestinationHarnessFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *DestinationHarnessOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _DestinationHarness.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationHarnessOwnershipTransferred) if err := _DestinationHarness.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_DestinationHarness *DestinationHarnessFilterer) ParseOwnershipTransferred(log types.Log) (*DestinationHarnessOwnershipTransferred, error) { event := new(DestinationHarnessOwnershipTransferred) if err := _DestinationHarness.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // DestinationHarnessTipsRecordedIterator is returned from FilterTipsRecorded and is used to iterate over the raw logs and unpacked data for TipsRecorded events raised by the DestinationHarness contract. type DestinationHarnessTipsRecordedIterator struct { Event *DestinationHarnessTipsRecorded // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *DestinationHarnessTipsRecordedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(DestinationHarnessTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(DestinationHarnessTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *DestinationHarnessTipsRecordedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *DestinationHarnessTipsRecordedIterator) Close() error { it.sub.Unsubscribe() return nil } // DestinationHarnessTipsRecorded represents a TipsRecorded event raised by the DestinationHarness contract. type DestinationHarnessTipsRecorded struct { MessageHash [32]byte PaddedTips *big.Int Raw types.Log // Blockchain specific contextual infos } // FilterTipsRecorded is a free log retrieval operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_DestinationHarness *DestinationHarnessFilterer) FilterTipsRecorded(opts *bind.FilterOpts) (*DestinationHarnessTipsRecordedIterator, error) { logs, sub, err := _DestinationHarness.contract.FilterLogs(opts, "TipsRecorded") if err != nil { return nil, err } return &DestinationHarnessTipsRecordedIterator{contract: _DestinationHarness.contract, event: "TipsRecorded", logs: logs, sub: sub}, nil } // WatchTipsRecorded is a free log subscription operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_DestinationHarness *DestinationHarnessFilterer) WatchTipsRecorded(opts *bind.WatchOpts, sink chan<- *DestinationHarnessTipsRecorded) (event.Subscription, error) { logs, sub, err := _DestinationHarness.contract.WatchLogs(opts, "TipsRecorded") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(DestinationHarnessTipsRecorded) if err := _DestinationHarness.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseTipsRecorded is a log parse operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_DestinationHarness *DestinationHarnessFilterer) ParseTipsRecorded(log types.Log) (*DestinationHarnessTipsRecorded, error) { event := new(DestinationHarnessTipsRecorded) if err := _DestinationHarness.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubMetaData contains all meta data concerning the ExecutionHub contract. var ExecutionHubMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"AlreadyExecuted\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AlreadyFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CallerNotAgentManager\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DisputeTimeoutNotOver\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FlagOutOfRange\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GasLimitTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GasSuppliedTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectDestinationDomain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectMagicValue\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectOriginDomain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectSnapshotRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IncorrectVersionLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IndexOutOfRange\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IndexedTooMuch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MessageOptimisticPeriod\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotaryInDispute\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OccupiedMemory\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PrecompileOutOfGas\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TreeHeightTooLow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnallocatedMemory\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedBaseMessage\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedCallData\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedCallDataPrefix\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedMessage\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnformattedReceipt\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ViewOverrun\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint32\",\"name\":\"remoteDomain\",\"type\":\"uint32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"name\":\"Executed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"paddedTips\",\"type\":\"uint256\"}],\"name\":\"TipsRecorded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"agentManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"agentStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"msgPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[]\",\"name\":\"originProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"snapProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"gasLimit\",\"type\":\"uint64\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAgent\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"snapRoot\",\"type\":\"bytes32\"}],\"name\":\"getAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"attNonce\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inbox\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"name\":\"isValidReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValid\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"agentIndex\",\"type\":\"uint32\"}],\"name\":\"latestDisputeStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumDisputeFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"openedAt\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"resolvedAt\",\"type\":\"uint40\"}],\"internalType\":\"structDisputeStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"localDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageReceipt\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageStatus\",\"outputs\":[{\"internalType\":\"enumMessageStatus\",\"name\":\"status\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Result[]\",\"name\":\"callResults\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"guardIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"openDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"slashedIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rivalIndex\",\"type\":\"uint32\"}],\"name\":\"resolveDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"synapseDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"versionString\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "79ba5097": "acceptOwnership()", "7622f78d": "agentManager()", "28f3fac9": "agentStatus(address)", "883099bc": "execute(bytes,bytes32[],bytes32[],uint8,uint64)", "2de5aaf7": "getAgent(uint256)", "4f127567": "getAttestationNonce(bytes32)", "fb0e722b": "inbox()", "e2f006f7": "isValidReceipt(bytes)", "dfadd81a": "latestDisputeStatus(uint32)", "8d3638f4": "localDomain()", "daa74a9e": "messageReceipt(bytes32)", "3c6cf473": "messageStatus(bytes32)", "60fc8466": "multicall((bool,bytes)[])", "a2155c34": "openDispute(uint32,uint32)", "8da5cb5b": "owner()", "e30c3978": "pendingOwner()", "715018a6": "renounceOwnership()", "61169218": "resolveDispute(uint32,uint32)", "717b8638": "synapseDomain()", "f2fde38b": "transferOwnership(address)", "54fd4d50": "version()", }, } // ExecutionHubABI is the input ABI used to generate the binding from. // Deprecated: Use ExecutionHubMetaData.ABI instead. var ExecutionHubABI = ExecutionHubMetaData.ABI // Deprecated: Use ExecutionHubMetaData.Sigs instead. // ExecutionHubFuncSigs maps the 4-byte function signature to its string representation. var ExecutionHubFuncSigs = ExecutionHubMetaData.Sigs // ExecutionHub is an auto generated Go binding around an Ethereum contract. type ExecutionHub struct { ExecutionHubCaller // Read-only binding to the contract ExecutionHubTransactor // Write-only binding to the contract ExecutionHubFilterer // Log filterer for contract events } // ExecutionHubCaller is an auto generated read-only Go binding around an Ethereum contract. type ExecutionHubCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ExecutionHubTransactor is an auto generated write-only Go binding around an Ethereum contract. type ExecutionHubTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ExecutionHubFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ExecutionHubFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ExecutionHubSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ExecutionHubSession struct { Contract *ExecutionHub // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ExecutionHubCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ExecutionHubCallerSession struct { Contract *ExecutionHubCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ExecutionHubTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ExecutionHubTransactorSession struct { Contract *ExecutionHubTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ExecutionHubRaw is an auto generated low-level Go binding around an Ethereum contract. type ExecutionHubRaw struct { Contract *ExecutionHub // Generic contract binding to access the raw methods on } // ExecutionHubCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ExecutionHubCallerRaw struct { Contract *ExecutionHubCaller // Generic read-only contract binding to access the raw methods on } // ExecutionHubTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ExecutionHubTransactorRaw struct { Contract *ExecutionHubTransactor // Generic write-only contract binding to access the raw methods on } // NewExecutionHub creates a new instance of ExecutionHub, bound to a specific deployed contract. func NewExecutionHub(address common.Address, backend bind.ContractBackend) (*ExecutionHub, error) { contract, err := bindExecutionHub(address, backend, backend, backend) if err != nil { return nil, err } return &ExecutionHub{ExecutionHubCaller: ExecutionHubCaller{contract: contract}, ExecutionHubTransactor: ExecutionHubTransactor{contract: contract}, ExecutionHubFilterer: ExecutionHubFilterer{contract: contract}}, nil } // NewExecutionHubCaller creates a new read-only instance of ExecutionHub, bound to a specific deployed contract. func NewExecutionHubCaller(address common.Address, caller bind.ContractCaller) (*ExecutionHubCaller, error) { contract, err := bindExecutionHub(address, caller, nil, nil) if err != nil { return nil, err } return &ExecutionHubCaller{contract: contract}, nil } // NewExecutionHubTransactor creates a new write-only instance of ExecutionHub, bound to a specific deployed contract. func NewExecutionHubTransactor(address common.Address, transactor bind.ContractTransactor) (*ExecutionHubTransactor, error) { contract, err := bindExecutionHub(address, nil, transactor, nil) if err != nil { return nil, err } return &ExecutionHubTransactor{contract: contract}, nil } // NewExecutionHubFilterer creates a new log filterer instance of ExecutionHub, bound to a specific deployed contract. func NewExecutionHubFilterer(address common.Address, filterer bind.ContractFilterer) (*ExecutionHubFilterer, error) { contract, err := bindExecutionHub(address, nil, nil, filterer) if err != nil { return nil, err } return &ExecutionHubFilterer{contract: contract}, nil } // bindExecutionHub binds a generic wrapper to an already deployed contract. func bindExecutionHub(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ExecutionHubMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ExecutionHub *ExecutionHubRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ExecutionHub.Contract.ExecutionHubCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ExecutionHub *ExecutionHubRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ExecutionHub.Contract.ExecutionHubTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ExecutionHub *ExecutionHubRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ExecutionHub.Contract.ExecutionHubTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ExecutionHub *ExecutionHubCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ExecutionHub.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ExecutionHub *ExecutionHubTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ExecutionHub.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ExecutionHub *ExecutionHubTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ExecutionHub.Contract.contract.Transact(opts, method, params...) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_ExecutionHub *ExecutionHubCaller) AgentManager(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "agentManager") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_ExecutionHub *ExecutionHubSession) AgentManager() (common.Address, error) { return _ExecutionHub.Contract.AgentManager(&_ExecutionHub.CallOpts) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_ExecutionHub *ExecutionHubCallerSession) AgentManager() (common.Address, error) { return _ExecutionHub.Contract.AgentManager(&_ExecutionHub.CallOpts) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_ExecutionHub *ExecutionHubCaller) AgentStatus(opts *bind.CallOpts, agent common.Address) (AgentStatus, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "agentStatus", agent) if err != nil { return *new(AgentStatus), err } out0 := *abi.ConvertType(out[0], new(AgentStatus)).(*AgentStatus) return out0, err } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_ExecutionHub *ExecutionHubSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _ExecutionHub.Contract.AgentStatus(&_ExecutionHub.CallOpts, agent) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_ExecutionHub *ExecutionHubCallerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _ExecutionHub.Contract.AgentStatus(&_ExecutionHub.CallOpts, agent) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_ExecutionHub *ExecutionHubCaller) GetAgent(opts *bind.CallOpts, index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "getAgent", index) outstruct := new(struct { Agent common.Address Status AgentStatus }) if err != nil { return *outstruct, err } outstruct.Agent = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Status = *abi.ConvertType(out[1], new(AgentStatus)).(*AgentStatus) return *outstruct, err } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_ExecutionHub *ExecutionHubSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _ExecutionHub.Contract.GetAgent(&_ExecutionHub.CallOpts, index) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_ExecutionHub *ExecutionHubCallerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _ExecutionHub.Contract.GetAgent(&_ExecutionHub.CallOpts, index) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_ExecutionHub *ExecutionHubCaller) GetAttestationNonce(opts *bind.CallOpts, snapRoot [32]byte) (uint32, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "getAttestationNonce", snapRoot) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_ExecutionHub *ExecutionHubSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _ExecutionHub.Contract.GetAttestationNonce(&_ExecutionHub.CallOpts, snapRoot) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_ExecutionHub *ExecutionHubCallerSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _ExecutionHub.Contract.GetAttestationNonce(&_ExecutionHub.CallOpts, snapRoot) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_ExecutionHub *ExecutionHubCaller) Inbox(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "inbox") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_ExecutionHub *ExecutionHubSession) Inbox() (common.Address, error) { return _ExecutionHub.Contract.Inbox(&_ExecutionHub.CallOpts) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_ExecutionHub *ExecutionHubCallerSession) Inbox() (common.Address, error) { return _ExecutionHub.Contract.Inbox(&_ExecutionHub.CallOpts) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_ExecutionHub *ExecutionHubCaller) IsValidReceipt(opts *bind.CallOpts, rcptPayload []byte) (bool, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "isValidReceipt", rcptPayload) if err != nil { return *new(bool), err } out0 := *abi.ConvertType(out[0], new(bool)).(*bool) return out0, err } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_ExecutionHub *ExecutionHubSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _ExecutionHub.Contract.IsValidReceipt(&_ExecutionHub.CallOpts, rcptPayload) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_ExecutionHub *ExecutionHubCallerSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _ExecutionHub.Contract.IsValidReceipt(&_ExecutionHub.CallOpts, rcptPayload) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_ExecutionHub *ExecutionHubCaller) LatestDisputeStatus(opts *bind.CallOpts, agentIndex uint32) (DisputeStatus, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "latestDisputeStatus", agentIndex) if err != nil { return *new(DisputeStatus), err } out0 := *abi.ConvertType(out[0], new(DisputeStatus)).(*DisputeStatus) return out0, err } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_ExecutionHub *ExecutionHubSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _ExecutionHub.Contract.LatestDisputeStatus(&_ExecutionHub.CallOpts, agentIndex) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_ExecutionHub *ExecutionHubCallerSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _ExecutionHub.Contract.LatestDisputeStatus(&_ExecutionHub.CallOpts, agentIndex) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_ExecutionHub *ExecutionHubCaller) LocalDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "localDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_ExecutionHub *ExecutionHubSession) LocalDomain() (uint32, error) { return _ExecutionHub.Contract.LocalDomain(&_ExecutionHub.CallOpts) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_ExecutionHub *ExecutionHubCallerSession) LocalDomain() (uint32, error) { return _ExecutionHub.Contract.LocalDomain(&_ExecutionHub.CallOpts) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_ExecutionHub *ExecutionHubCaller) MessageReceipt(opts *bind.CallOpts, messageHash [32]byte) ([]byte, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "messageReceipt", messageHash) if err != nil { return *new([]byte), err } out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) return out0, err } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_ExecutionHub *ExecutionHubSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _ExecutionHub.Contract.MessageReceipt(&_ExecutionHub.CallOpts, messageHash) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes rcptPayload) func (_ExecutionHub *ExecutionHubCallerSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _ExecutionHub.Contract.MessageReceipt(&_ExecutionHub.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_ExecutionHub *ExecutionHubCaller) MessageStatus(opts *bind.CallOpts, messageHash [32]byte) (uint8, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "messageStatus", messageHash) if err != nil { return *new(uint8), err } out0 := *abi.ConvertType(out[0], new(uint8)).(*uint8) return out0, err } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_ExecutionHub *ExecutionHubSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _ExecutionHub.Contract.MessageStatus(&_ExecutionHub.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_ExecutionHub *ExecutionHubCallerSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _ExecutionHub.Contract.MessageStatus(&_ExecutionHub.CallOpts, messageHash) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_ExecutionHub *ExecutionHubCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_ExecutionHub *ExecutionHubSession) Owner() (common.Address, error) { return _ExecutionHub.Contract.Owner(&_ExecutionHub.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_ExecutionHub *ExecutionHubCallerSession) Owner() (common.Address, error) { return _ExecutionHub.Contract.Owner(&_ExecutionHub.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_ExecutionHub *ExecutionHubCaller) PendingOwner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "pendingOwner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_ExecutionHub *ExecutionHubSession) PendingOwner() (common.Address, error) { return _ExecutionHub.Contract.PendingOwner(&_ExecutionHub.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_ExecutionHub *ExecutionHubCallerSession) PendingOwner() (common.Address, error) { return _ExecutionHub.Contract.PendingOwner(&_ExecutionHub.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_ExecutionHub *ExecutionHubCaller) SynapseDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "synapseDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_ExecutionHub *ExecutionHubSession) SynapseDomain() (uint32, error) { return _ExecutionHub.Contract.SynapseDomain(&_ExecutionHub.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_ExecutionHub *ExecutionHubCallerSession) SynapseDomain() (uint32, error) { return _ExecutionHub.Contract.SynapseDomain(&_ExecutionHub.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_ExecutionHub *ExecutionHubCaller) Version(opts *bind.CallOpts) (string, error) { var out []interface{} err := _ExecutionHub.contract.Call(opts, &out, "version") if err != nil { return *new(string), err } out0 := *abi.ConvertType(out[0], new(string)).(*string) return out0, err } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_ExecutionHub *ExecutionHubSession) Version() (string, error) { return _ExecutionHub.Contract.Version(&_ExecutionHub.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_ExecutionHub *ExecutionHubCallerSession) Version() (string, error) { return _ExecutionHub.Contract.Version(&_ExecutionHub.CallOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_ExecutionHub *ExecutionHubTransactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "acceptOwnership") } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_ExecutionHub *ExecutionHubSession) AcceptOwnership() (*types.Transaction, error) { return _ExecutionHub.Contract.AcceptOwnership(&_ExecutionHub.TransactOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_ExecutionHub *ExecutionHubTransactorSession) AcceptOwnership() (*types.Transaction, error) { return _ExecutionHub.Contract.AcceptOwnership(&_ExecutionHub.TransactOpts) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_ExecutionHub *ExecutionHubTransactor) Execute(opts *bind.TransactOpts, msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "execute", msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_ExecutionHub *ExecutionHubSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _ExecutionHub.Contract.Execute(&_ExecutionHub.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_ExecutionHub *ExecutionHubTransactorSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _ExecutionHub.Contract.Execute(&_ExecutionHub.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_ExecutionHub *ExecutionHubTransactor) Multicall(opts *bind.TransactOpts, calls []MultiCallableCall) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "multicall", calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_ExecutionHub *ExecutionHubSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _ExecutionHub.Contract.Multicall(&_ExecutionHub.TransactOpts, calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_ExecutionHub *ExecutionHubTransactorSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _ExecutionHub.Contract.Multicall(&_ExecutionHub.TransactOpts, calls) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_ExecutionHub *ExecutionHubTransactor) OpenDispute(opts *bind.TransactOpts, guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "openDispute", guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_ExecutionHub *ExecutionHubSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _ExecutionHub.Contract.OpenDispute(&_ExecutionHub.TransactOpts, guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_ExecutionHub *ExecutionHubTransactorSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _ExecutionHub.Contract.OpenDispute(&_ExecutionHub.TransactOpts, guardIndex, notaryIndex) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_ExecutionHub *ExecutionHubTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_ExecutionHub *ExecutionHubSession) RenounceOwnership() (*types.Transaction, error) { return _ExecutionHub.Contract.RenounceOwnership(&_ExecutionHub.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_ExecutionHub *ExecutionHubTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _ExecutionHub.Contract.RenounceOwnership(&_ExecutionHub.TransactOpts) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_ExecutionHub *ExecutionHubTransactor) ResolveDispute(opts *bind.TransactOpts, slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "resolveDispute", slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_ExecutionHub *ExecutionHubSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _ExecutionHub.Contract.ResolveDispute(&_ExecutionHub.TransactOpts, slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_ExecutionHub *ExecutionHubTransactorSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _ExecutionHub.Contract.ResolveDispute(&_ExecutionHub.TransactOpts, slashedIndex, rivalIndex) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_ExecutionHub *ExecutionHubTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _ExecutionHub.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_ExecutionHub *ExecutionHubSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _ExecutionHub.Contract.TransferOwnership(&_ExecutionHub.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_ExecutionHub *ExecutionHubTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _ExecutionHub.Contract.TransferOwnership(&_ExecutionHub.TransactOpts, newOwner) } // ExecutionHubExecutedIterator is returned from FilterExecuted and is used to iterate over the raw logs and unpacked data for Executed events raised by the ExecutionHub contract. type ExecutionHubExecutedIterator struct { Event *ExecutionHubExecuted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubExecutedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubExecutedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubExecutedIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubExecuted represents a Executed event raised by the ExecutionHub contract. type ExecutionHubExecuted struct { RemoteDomain uint32 MessageHash [32]byte Success bool Raw types.Log // Blockchain specific contextual infos } // FilterExecuted is a free log retrieval operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_ExecutionHub *ExecutionHubFilterer) FilterExecuted(opts *bind.FilterOpts, remoteDomain []uint32, messageHash [][32]byte) (*ExecutionHubExecutedIterator, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _ExecutionHub.contract.FilterLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return &ExecutionHubExecutedIterator{contract: _ExecutionHub.contract, event: "Executed", logs: logs, sub: sub}, nil } // WatchExecuted is a free log subscription operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_ExecutionHub *ExecutionHubFilterer) WatchExecuted(opts *bind.WatchOpts, sink chan<- *ExecutionHubExecuted, remoteDomain []uint32, messageHash [][32]byte) (event.Subscription, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _ExecutionHub.contract.WatchLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubExecuted) if err := _ExecutionHub.contract.UnpackLog(event, "Executed", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseExecuted is a log parse operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_ExecutionHub *ExecutionHubFilterer) ParseExecuted(log types.Log) (*ExecutionHubExecuted, error) { event := new(ExecutionHubExecuted) if err := _ExecutionHub.contract.UnpackLog(event, "Executed", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the ExecutionHub contract. type ExecutionHubInitializedIterator struct { Event *ExecutionHubInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubInitialized represents a Initialized event raised by the ExecutionHub contract. type ExecutionHubInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ExecutionHub *ExecutionHubFilterer) FilterInitialized(opts *bind.FilterOpts) (*ExecutionHubInitializedIterator, error) { logs, sub, err := _ExecutionHub.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &ExecutionHubInitializedIterator{contract: _ExecutionHub.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ExecutionHub *ExecutionHubFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *ExecutionHubInitialized) (event.Subscription, error) { logs, sub, err := _ExecutionHub.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubInitialized) if err := _ExecutionHub.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ExecutionHub *ExecutionHubFilterer) ParseInitialized(log types.Log) (*ExecutionHubInitialized, error) { event := new(ExecutionHubInitialized) if err := _ExecutionHub.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubOwnershipTransferStartedIterator is returned from FilterOwnershipTransferStarted and is used to iterate over the raw logs and unpacked data for OwnershipTransferStarted events raised by the ExecutionHub contract. type ExecutionHubOwnershipTransferStartedIterator struct { Event *ExecutionHubOwnershipTransferStarted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubOwnershipTransferStartedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubOwnershipTransferStartedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubOwnershipTransferStartedIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubOwnershipTransferStarted represents a OwnershipTransferStarted event raised by the ExecutionHub contract. type ExecutionHubOwnershipTransferStarted struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferStarted is a free log retrieval operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_ExecutionHub *ExecutionHubFilterer) FilterOwnershipTransferStarted(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*ExecutionHubOwnershipTransferStartedIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _ExecutionHub.contract.FilterLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &ExecutionHubOwnershipTransferStartedIterator{contract: _ExecutionHub.contract, event: "OwnershipTransferStarted", logs: logs, sub: sub}, nil } // WatchOwnershipTransferStarted is a free log subscription operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_ExecutionHub *ExecutionHubFilterer) WatchOwnershipTransferStarted(opts *bind.WatchOpts, sink chan<- *ExecutionHubOwnershipTransferStarted, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _ExecutionHub.contract.WatchLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubOwnershipTransferStarted) if err := _ExecutionHub.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferStarted is a log parse operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_ExecutionHub *ExecutionHubFilterer) ParseOwnershipTransferStarted(log types.Log) (*ExecutionHubOwnershipTransferStarted, error) { event := new(ExecutionHubOwnershipTransferStarted) if err := _ExecutionHub.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the ExecutionHub contract. type ExecutionHubOwnershipTransferredIterator struct { Event *ExecutionHubOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubOwnershipTransferred represents a OwnershipTransferred event raised by the ExecutionHub contract. type ExecutionHubOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_ExecutionHub *ExecutionHubFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*ExecutionHubOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _ExecutionHub.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &ExecutionHubOwnershipTransferredIterator{contract: _ExecutionHub.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_ExecutionHub *ExecutionHubFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *ExecutionHubOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _ExecutionHub.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubOwnershipTransferred) if err := _ExecutionHub.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_ExecutionHub *ExecutionHubFilterer) ParseOwnershipTransferred(log types.Log) (*ExecutionHubOwnershipTransferred, error) { event := new(ExecutionHubOwnershipTransferred) if err := _ExecutionHub.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubTipsRecordedIterator is returned from FilterTipsRecorded and is used to iterate over the raw logs and unpacked data for TipsRecorded events raised by the ExecutionHub contract. type ExecutionHubTipsRecordedIterator struct { Event *ExecutionHubTipsRecorded // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubTipsRecordedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubTipsRecordedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubTipsRecordedIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubTipsRecorded represents a TipsRecorded event raised by the ExecutionHub contract. type ExecutionHubTipsRecorded struct { MessageHash [32]byte PaddedTips *big.Int Raw types.Log // Blockchain specific contextual infos } // FilterTipsRecorded is a free log retrieval operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_ExecutionHub *ExecutionHubFilterer) FilterTipsRecorded(opts *bind.FilterOpts) (*ExecutionHubTipsRecordedIterator, error) { logs, sub, err := _ExecutionHub.contract.FilterLogs(opts, "TipsRecorded") if err != nil { return nil, err } return &ExecutionHubTipsRecordedIterator{contract: _ExecutionHub.contract, event: "TipsRecorded", logs: logs, sub: sub}, nil } // WatchTipsRecorded is a free log subscription operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_ExecutionHub *ExecutionHubFilterer) WatchTipsRecorded(opts *bind.WatchOpts, sink chan<- *ExecutionHubTipsRecorded) (event.Subscription, error) { logs, sub, err := _ExecutionHub.contract.WatchLogs(opts, "TipsRecorded") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubTipsRecorded) if err := _ExecutionHub.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseTipsRecorded is a log parse operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_ExecutionHub *ExecutionHubFilterer) ParseTipsRecorded(log types.Log) (*ExecutionHubTipsRecorded, error) { event := new(ExecutionHubTipsRecorded) if err := _ExecutionHub.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubEventsMetaData contains all meta data concerning the ExecutionHubEvents contract. var ExecutionHubEventsMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint32\",\"name\":\"remoteDomain\",\"type\":\"uint32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"name\":\"Executed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"paddedTips\",\"type\":\"uint256\"}],\"name\":\"TipsRecorded\",\"type\":\"event\"}]", } // ExecutionHubEventsABI is the input ABI used to generate the binding from. // Deprecated: Use ExecutionHubEventsMetaData.ABI instead. var ExecutionHubEventsABI = ExecutionHubEventsMetaData.ABI // ExecutionHubEvents is an auto generated Go binding around an Ethereum contract. type ExecutionHubEvents struct { ExecutionHubEventsCaller // Read-only binding to the contract ExecutionHubEventsTransactor // Write-only binding to the contract ExecutionHubEventsFilterer // Log filterer for contract events } // ExecutionHubEventsCaller is an auto generated read-only Go binding around an Ethereum contract. type ExecutionHubEventsCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ExecutionHubEventsTransactor is an auto generated write-only Go binding around an Ethereum contract. type ExecutionHubEventsTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ExecutionHubEventsFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ExecutionHubEventsFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ExecutionHubEventsSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ExecutionHubEventsSession struct { Contract *ExecutionHubEvents // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ExecutionHubEventsCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ExecutionHubEventsCallerSession struct { Contract *ExecutionHubEventsCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ExecutionHubEventsTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ExecutionHubEventsTransactorSession struct { Contract *ExecutionHubEventsTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ExecutionHubEventsRaw is an auto generated low-level Go binding around an Ethereum contract. type ExecutionHubEventsRaw struct { Contract *ExecutionHubEvents // Generic contract binding to access the raw methods on } // ExecutionHubEventsCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ExecutionHubEventsCallerRaw struct { Contract *ExecutionHubEventsCaller // Generic read-only contract binding to access the raw methods on } // ExecutionHubEventsTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ExecutionHubEventsTransactorRaw struct { Contract *ExecutionHubEventsTransactor // Generic write-only contract binding to access the raw methods on } // NewExecutionHubEvents creates a new instance of ExecutionHubEvents, bound to a specific deployed contract. func NewExecutionHubEvents(address common.Address, backend bind.ContractBackend) (*ExecutionHubEvents, error) { contract, err := bindExecutionHubEvents(address, backend, backend, backend) if err != nil { return nil, err } return &ExecutionHubEvents{ExecutionHubEventsCaller: ExecutionHubEventsCaller{contract: contract}, ExecutionHubEventsTransactor: ExecutionHubEventsTransactor{contract: contract}, ExecutionHubEventsFilterer: ExecutionHubEventsFilterer{contract: contract}}, nil } // NewExecutionHubEventsCaller creates a new read-only instance of ExecutionHubEvents, bound to a specific deployed contract. func NewExecutionHubEventsCaller(address common.Address, caller bind.ContractCaller) (*ExecutionHubEventsCaller, error) { contract, err := bindExecutionHubEvents(address, caller, nil, nil) if err != nil { return nil, err } return &ExecutionHubEventsCaller{contract: contract}, nil } // NewExecutionHubEventsTransactor creates a new write-only instance of ExecutionHubEvents, bound to a specific deployed contract. func NewExecutionHubEventsTransactor(address common.Address, transactor bind.ContractTransactor) (*ExecutionHubEventsTransactor, error) { contract, err := bindExecutionHubEvents(address, nil, transactor, nil) if err != nil { return nil, err } return &ExecutionHubEventsTransactor{contract: contract}, nil } // NewExecutionHubEventsFilterer creates a new log filterer instance of ExecutionHubEvents, bound to a specific deployed contract. func NewExecutionHubEventsFilterer(address common.Address, filterer bind.ContractFilterer) (*ExecutionHubEventsFilterer, error) { contract, err := bindExecutionHubEvents(address, nil, nil, filterer) if err != nil { return nil, err } return &ExecutionHubEventsFilterer{contract: contract}, nil } // bindExecutionHubEvents binds a generic wrapper to an already deployed contract. func bindExecutionHubEvents(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ExecutionHubEventsMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ExecutionHubEvents *ExecutionHubEventsRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ExecutionHubEvents.Contract.ExecutionHubEventsCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ExecutionHubEvents *ExecutionHubEventsRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ExecutionHubEvents.Contract.ExecutionHubEventsTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ExecutionHubEvents *ExecutionHubEventsRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ExecutionHubEvents.Contract.ExecutionHubEventsTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ExecutionHubEvents *ExecutionHubEventsCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ExecutionHubEvents.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ExecutionHubEvents *ExecutionHubEventsTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ExecutionHubEvents.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ExecutionHubEvents *ExecutionHubEventsTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ExecutionHubEvents.Contract.contract.Transact(opts, method, params...) } // ExecutionHubEventsExecutedIterator is returned from FilterExecuted and is used to iterate over the raw logs and unpacked data for Executed events raised by the ExecutionHubEvents contract. type ExecutionHubEventsExecutedIterator struct { Event *ExecutionHubEventsExecuted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubEventsExecutedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubEventsExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubEventsExecuted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubEventsExecutedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubEventsExecutedIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubEventsExecuted represents a Executed event raised by the ExecutionHubEvents contract. type ExecutionHubEventsExecuted struct { RemoteDomain uint32 MessageHash [32]byte Success bool Raw types.Log // Blockchain specific contextual infos } // FilterExecuted is a free log retrieval operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_ExecutionHubEvents *ExecutionHubEventsFilterer) FilterExecuted(opts *bind.FilterOpts, remoteDomain []uint32, messageHash [][32]byte) (*ExecutionHubEventsExecutedIterator, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _ExecutionHubEvents.contract.FilterLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return &ExecutionHubEventsExecutedIterator{contract: _ExecutionHubEvents.contract, event: "Executed", logs: logs, sub: sub}, nil } // WatchExecuted is a free log subscription operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_ExecutionHubEvents *ExecutionHubEventsFilterer) WatchExecuted(opts *bind.WatchOpts, sink chan<- *ExecutionHubEventsExecuted, remoteDomain []uint32, messageHash [][32]byte) (event.Subscription, error) { var remoteDomainRule []interface{} for _, remoteDomainItem := range remoteDomain { remoteDomainRule = append(remoteDomainRule, remoteDomainItem) } var messageHashRule []interface{} for _, messageHashItem := range messageHash { messageHashRule = append(messageHashRule, messageHashItem) } logs, sub, err := _ExecutionHubEvents.contract.WatchLogs(opts, "Executed", remoteDomainRule, messageHashRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubEventsExecuted) if err := _ExecutionHubEvents.contract.UnpackLog(event, "Executed", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseExecuted is a log parse operation binding the contract event 0x39c48fd1b2185b07007abc7904a8cdf782cfe449fd0e9bba1c2223a691e15f0b. // // Solidity: event Executed(uint32 indexed remoteDomain, bytes32 indexed messageHash, bool success) func (_ExecutionHubEvents *ExecutionHubEventsFilterer) ParseExecuted(log types.Log) (*ExecutionHubEventsExecuted, error) { event := new(ExecutionHubEventsExecuted) if err := _ExecutionHubEvents.contract.UnpackLog(event, "Executed", log); err != nil { return nil, err } event.Raw = log return event, nil } // ExecutionHubEventsTipsRecordedIterator is returned from FilterTipsRecorded and is used to iterate over the raw logs and unpacked data for TipsRecorded events raised by the ExecutionHubEvents contract. type ExecutionHubEventsTipsRecordedIterator struct { Event *ExecutionHubEventsTipsRecorded // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ExecutionHubEventsTipsRecordedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ExecutionHubEventsTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ExecutionHubEventsTipsRecorded) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ExecutionHubEventsTipsRecordedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ExecutionHubEventsTipsRecordedIterator) Close() error { it.sub.Unsubscribe() return nil } // ExecutionHubEventsTipsRecorded represents a TipsRecorded event raised by the ExecutionHubEvents contract. type ExecutionHubEventsTipsRecorded struct { MessageHash [32]byte PaddedTips *big.Int Raw types.Log // Blockchain specific contextual infos } // FilterTipsRecorded is a free log retrieval operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_ExecutionHubEvents *ExecutionHubEventsFilterer) FilterTipsRecorded(opts *bind.FilterOpts) (*ExecutionHubEventsTipsRecordedIterator, error) { logs, sub, err := _ExecutionHubEvents.contract.FilterLogs(opts, "TipsRecorded") if err != nil { return nil, err } return &ExecutionHubEventsTipsRecordedIterator{contract: _ExecutionHubEvents.contract, event: "TipsRecorded", logs: logs, sub: sub}, nil } // WatchTipsRecorded is a free log subscription operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_ExecutionHubEvents *ExecutionHubEventsFilterer) WatchTipsRecorded(opts *bind.WatchOpts, sink chan<- *ExecutionHubEventsTipsRecorded) (event.Subscription, error) { logs, sub, err := _ExecutionHubEvents.contract.WatchLogs(opts, "TipsRecorded") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ExecutionHubEventsTipsRecorded) if err := _ExecutionHubEvents.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseTipsRecorded is a log parse operation binding the contract event 0x22bd0cccf7173839e6f30c797b419921d48a23b0732d0b120c600a49247d3016. // // Solidity: event TipsRecorded(bytes32 messageHash, uint256 paddedTips) func (_ExecutionHubEvents *ExecutionHubEventsFilterer) ParseTipsRecorded(log types.Log) (*ExecutionHubEventsTipsRecorded, error) { event := new(ExecutionHubEventsTipsRecorded) if err := _ExecutionHubEvents.contract.UnpackLog(event, "TipsRecorded", log); err != nil { return nil, err } event.Raw = log return event, nil } // GasDataLibMetaData contains all meta data concerning the GasDataLib contract. var GasDataLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220bdb3570a0523679468c22c0d9ed0bc5ebda43d60a1b0bf52ddfba7142ff0fc6564736f6c63430008110033", } // GasDataLibABI is the input ABI used to generate the binding from. // Deprecated: Use GasDataLibMetaData.ABI instead. var GasDataLibABI = GasDataLibMetaData.ABI // GasDataLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use GasDataLibMetaData.Bin instead. var GasDataLibBin = GasDataLibMetaData.Bin // DeployGasDataLib deploys a new Ethereum contract, binding an instance of GasDataLib to it. func DeployGasDataLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *GasDataLib, error) { parsed, err := GasDataLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(GasDataLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &GasDataLib{GasDataLibCaller: GasDataLibCaller{contract: contract}, GasDataLibTransactor: GasDataLibTransactor{contract: contract}, GasDataLibFilterer: GasDataLibFilterer{contract: contract}}, nil } // GasDataLib is an auto generated Go binding around an Ethereum contract. type GasDataLib struct { GasDataLibCaller // Read-only binding to the contract GasDataLibTransactor // Write-only binding to the contract GasDataLibFilterer // Log filterer for contract events } // GasDataLibCaller is an auto generated read-only Go binding around an Ethereum contract. type GasDataLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // GasDataLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type GasDataLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // GasDataLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type GasDataLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // GasDataLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type GasDataLibSession struct { Contract *GasDataLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // GasDataLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type GasDataLibCallerSession struct { Contract *GasDataLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // GasDataLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type GasDataLibTransactorSession struct { Contract *GasDataLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // GasDataLibRaw is an auto generated low-level Go binding around an Ethereum contract. type GasDataLibRaw struct { Contract *GasDataLib // Generic contract binding to access the raw methods on } // GasDataLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type GasDataLibCallerRaw struct { Contract *GasDataLibCaller // Generic read-only contract binding to access the raw methods on } // GasDataLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type GasDataLibTransactorRaw struct { Contract *GasDataLibTransactor // Generic write-only contract binding to access the raw methods on } // NewGasDataLib creates a new instance of GasDataLib, bound to a specific deployed contract. func NewGasDataLib(address common.Address, backend bind.ContractBackend) (*GasDataLib, error) { contract, err := bindGasDataLib(address, backend, backend, backend) if err != nil { return nil, err } return &GasDataLib{GasDataLibCaller: GasDataLibCaller{contract: contract}, GasDataLibTransactor: GasDataLibTransactor{contract: contract}, GasDataLibFilterer: GasDataLibFilterer{contract: contract}}, nil } // NewGasDataLibCaller creates a new read-only instance of GasDataLib, bound to a specific deployed contract. func NewGasDataLibCaller(address common.Address, caller bind.ContractCaller) (*GasDataLibCaller, error) { contract, err := bindGasDataLib(address, caller, nil, nil) if err != nil { return nil, err } return &GasDataLibCaller{contract: contract}, nil } // NewGasDataLibTransactor creates a new write-only instance of GasDataLib, bound to a specific deployed contract. func NewGasDataLibTransactor(address common.Address, transactor bind.ContractTransactor) (*GasDataLibTransactor, error) { contract, err := bindGasDataLib(address, nil, transactor, nil) if err != nil { return nil, err } return &GasDataLibTransactor{contract: contract}, nil } // NewGasDataLibFilterer creates a new log filterer instance of GasDataLib, bound to a specific deployed contract. func NewGasDataLibFilterer(address common.Address, filterer bind.ContractFilterer) (*GasDataLibFilterer, error) { contract, err := bindGasDataLib(address, nil, nil, filterer) if err != nil { return nil, err } return &GasDataLibFilterer{contract: contract}, nil } // bindGasDataLib binds a generic wrapper to an already deployed contract. func bindGasDataLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := GasDataLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_GasDataLib *GasDataLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _GasDataLib.Contract.GasDataLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_GasDataLib *GasDataLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _GasDataLib.Contract.GasDataLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_GasDataLib *GasDataLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _GasDataLib.Contract.GasDataLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_GasDataLib *GasDataLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _GasDataLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_GasDataLib *GasDataLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _GasDataLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_GasDataLib *GasDataLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _GasDataLib.Contract.contract.Transact(opts, method, params...) } // HeaderLibMetaData contains all meta data concerning the HeaderLib contract. var HeaderLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c69c3765316c2379d6d5099ab75b84418c45a8ad7c0a6a939fa02ddae80f3dc064736f6c63430008110033", } // HeaderLibABI is the input ABI used to generate the binding from. // Deprecated: Use HeaderLibMetaData.ABI instead. var HeaderLibABI = HeaderLibMetaData.ABI // HeaderLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use HeaderLibMetaData.Bin instead. var HeaderLibBin = HeaderLibMetaData.Bin // DeployHeaderLib deploys a new Ethereum contract, binding an instance of HeaderLib to it. func DeployHeaderLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *HeaderLib, error) { parsed, err := HeaderLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(HeaderLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &HeaderLib{HeaderLibCaller: HeaderLibCaller{contract: contract}, HeaderLibTransactor: HeaderLibTransactor{contract: contract}, HeaderLibFilterer: HeaderLibFilterer{contract: contract}}, nil } // HeaderLib is an auto generated Go binding around an Ethereum contract. type HeaderLib struct { HeaderLibCaller // Read-only binding to the contract HeaderLibTransactor // Write-only binding to the contract HeaderLibFilterer // Log filterer for contract events } // HeaderLibCaller is an auto generated read-only Go binding around an Ethereum contract. type HeaderLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // HeaderLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type HeaderLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // HeaderLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type HeaderLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // HeaderLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type HeaderLibSession struct { Contract *HeaderLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // HeaderLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type HeaderLibCallerSession struct { Contract *HeaderLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // HeaderLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type HeaderLibTransactorSession struct { Contract *HeaderLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // HeaderLibRaw is an auto generated low-level Go binding around an Ethereum contract. type HeaderLibRaw struct { Contract *HeaderLib // Generic contract binding to access the raw methods on } // HeaderLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type HeaderLibCallerRaw struct { Contract *HeaderLibCaller // Generic read-only contract binding to access the raw methods on } // HeaderLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type HeaderLibTransactorRaw struct { Contract *HeaderLibTransactor // Generic write-only contract binding to access the raw methods on } // NewHeaderLib creates a new instance of HeaderLib, bound to a specific deployed contract. func NewHeaderLib(address common.Address, backend bind.ContractBackend) (*HeaderLib, error) { contract, err := bindHeaderLib(address, backend, backend, backend) if err != nil { return nil, err } return &HeaderLib{HeaderLibCaller: HeaderLibCaller{contract: contract}, HeaderLibTransactor: HeaderLibTransactor{contract: contract}, HeaderLibFilterer: HeaderLibFilterer{contract: contract}}, nil } // NewHeaderLibCaller creates a new read-only instance of HeaderLib, bound to a specific deployed contract. func NewHeaderLibCaller(address common.Address, caller bind.ContractCaller) (*HeaderLibCaller, error) { contract, err := bindHeaderLib(address, caller, nil, nil) if err != nil { return nil, err } return &HeaderLibCaller{contract: contract}, nil } // NewHeaderLibTransactor creates a new write-only instance of HeaderLib, bound to a specific deployed contract. func NewHeaderLibTransactor(address common.Address, transactor bind.ContractTransactor) (*HeaderLibTransactor, error) { contract, err := bindHeaderLib(address, nil, transactor, nil) if err != nil { return nil, err } return &HeaderLibTransactor{contract: contract}, nil } // NewHeaderLibFilterer creates a new log filterer instance of HeaderLib, bound to a specific deployed contract. func NewHeaderLibFilterer(address common.Address, filterer bind.ContractFilterer) (*HeaderLibFilterer, error) { contract, err := bindHeaderLib(address, nil, nil, filterer) if err != nil { return nil, err } return &HeaderLibFilterer{contract: contract}, nil } // bindHeaderLib binds a generic wrapper to an already deployed contract. func bindHeaderLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := HeaderLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_HeaderLib *HeaderLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _HeaderLib.Contract.HeaderLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_HeaderLib *HeaderLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _HeaderLib.Contract.HeaderLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_HeaderLib *HeaderLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _HeaderLib.Contract.HeaderLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_HeaderLib *HeaderLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _HeaderLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_HeaderLib *HeaderLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _HeaderLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_HeaderLib *HeaderLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _HeaderLib.Contract.contract.Transact(opts, method, params...) } // IAgentManagerMetaData contains all meta data concerning the IAgentManager contract. var IAgentManagerMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"agentRoot\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"agentStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"disputeStatus\",\"outputs\":[{\"internalType\":\"enumDisputeFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"rival\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"fraudProver\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"disputePtr\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAgent\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getDispute\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"guard\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"notary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"slashedAgent\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"fraudProver\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"reportPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"reportSignature\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDisputesAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"guardIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"openDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"prover\",\"type\":\"address\"}],\"name\":\"slashAgent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "36cba43c": "agentRoot()", "28f3fac9": "agentStatus(address)", "3463d1b1": "disputeStatus(address)", "2de5aaf7": "getAgent(uint256)", "e3a96cbd": "getDispute(uint256)", "3aaeccc6": "getDisputesAmount()", "a2155c34": "openDispute(uint32,uint32)", "2853a0e6": "slashAgent(uint32,address,address)", }, } // IAgentManagerABI is the input ABI used to generate the binding from. // Deprecated: Use IAgentManagerMetaData.ABI instead. var IAgentManagerABI = IAgentManagerMetaData.ABI // Deprecated: Use IAgentManagerMetaData.Sigs instead. // IAgentManagerFuncSigs maps the 4-byte function signature to its string representation. var IAgentManagerFuncSigs = IAgentManagerMetaData.Sigs // IAgentManager is an auto generated Go binding around an Ethereum contract. type IAgentManager struct { IAgentManagerCaller // Read-only binding to the contract IAgentManagerTransactor // Write-only binding to the contract IAgentManagerFilterer // Log filterer for contract events } // IAgentManagerCaller is an auto generated read-only Go binding around an Ethereum contract. type IAgentManagerCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IAgentManagerTransactor is an auto generated write-only Go binding around an Ethereum contract. type IAgentManagerTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IAgentManagerFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type IAgentManagerFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IAgentManagerSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type IAgentManagerSession struct { Contract *IAgentManager // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IAgentManagerCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type IAgentManagerCallerSession struct { Contract *IAgentManagerCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // IAgentManagerTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type IAgentManagerTransactorSession struct { Contract *IAgentManagerTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IAgentManagerRaw is an auto generated low-level Go binding around an Ethereum contract. type IAgentManagerRaw struct { Contract *IAgentManager // Generic contract binding to access the raw methods on } // IAgentManagerCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type IAgentManagerCallerRaw struct { Contract *IAgentManagerCaller // Generic read-only contract binding to access the raw methods on } // IAgentManagerTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type IAgentManagerTransactorRaw struct { Contract *IAgentManagerTransactor // Generic write-only contract binding to access the raw methods on } // NewIAgentManager creates a new instance of IAgentManager, bound to a specific deployed contract. func NewIAgentManager(address common.Address, backend bind.ContractBackend) (*IAgentManager, error) { contract, err := bindIAgentManager(address, backend, backend, backend) if err != nil { return nil, err } return &IAgentManager{IAgentManagerCaller: IAgentManagerCaller{contract: contract}, IAgentManagerTransactor: IAgentManagerTransactor{contract: contract}, IAgentManagerFilterer: IAgentManagerFilterer{contract: contract}}, nil } // NewIAgentManagerCaller creates a new read-only instance of IAgentManager, bound to a specific deployed contract. func NewIAgentManagerCaller(address common.Address, caller bind.ContractCaller) (*IAgentManagerCaller, error) { contract, err := bindIAgentManager(address, caller, nil, nil) if err != nil { return nil, err } return &IAgentManagerCaller{contract: contract}, nil } // NewIAgentManagerTransactor creates a new write-only instance of IAgentManager, bound to a specific deployed contract. func NewIAgentManagerTransactor(address common.Address, transactor bind.ContractTransactor) (*IAgentManagerTransactor, error) { contract, err := bindIAgentManager(address, nil, transactor, nil) if err != nil { return nil, err } return &IAgentManagerTransactor{contract: contract}, nil } // NewIAgentManagerFilterer creates a new log filterer instance of IAgentManager, bound to a specific deployed contract. func NewIAgentManagerFilterer(address common.Address, filterer bind.ContractFilterer) (*IAgentManagerFilterer, error) { contract, err := bindIAgentManager(address, nil, nil, filterer) if err != nil { return nil, err } return &IAgentManagerFilterer{contract: contract}, nil } // bindIAgentManager binds a generic wrapper to an already deployed contract. func bindIAgentManager(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := IAgentManagerMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IAgentManager *IAgentManagerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IAgentManager.Contract.IAgentManagerCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IAgentManager *IAgentManagerRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IAgentManager.Contract.IAgentManagerTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IAgentManager *IAgentManagerRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IAgentManager.Contract.IAgentManagerTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IAgentManager *IAgentManagerCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IAgentManager.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IAgentManager *IAgentManagerTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IAgentManager.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IAgentManager *IAgentManagerTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IAgentManager.Contract.contract.Transact(opts, method, params...) } // AgentRoot is a free data retrieval call binding the contract method 0x36cba43c. // // Solidity: function agentRoot() view returns(bytes32) func (_IAgentManager *IAgentManagerCaller) AgentRoot(opts *bind.CallOpts) ([32]byte, error) { var out []interface{} err := _IAgentManager.contract.Call(opts, &out, "agentRoot") if err != nil { return *new([32]byte), err } out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) return out0, err } // AgentRoot is a free data retrieval call binding the contract method 0x36cba43c. // // Solidity: function agentRoot() view returns(bytes32) func (_IAgentManager *IAgentManagerSession) AgentRoot() ([32]byte, error) { return _IAgentManager.Contract.AgentRoot(&_IAgentManager.CallOpts) } // AgentRoot is a free data retrieval call binding the contract method 0x36cba43c. // // Solidity: function agentRoot() view returns(bytes32) func (_IAgentManager *IAgentManagerCallerSession) AgentRoot() ([32]byte, error) { return _IAgentManager.Contract.AgentRoot(&_IAgentManager.CallOpts) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_IAgentManager *IAgentManagerCaller) AgentStatus(opts *bind.CallOpts, agent common.Address) (AgentStatus, error) { var out []interface{} err := _IAgentManager.contract.Call(opts, &out, "agentStatus", agent) if err != nil { return *new(AgentStatus), err } out0 := *abi.ConvertType(out[0], new(AgentStatus)).(*AgentStatus) return out0, err } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_IAgentManager *IAgentManagerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _IAgentManager.Contract.AgentStatus(&_IAgentManager.CallOpts, agent) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_IAgentManager *IAgentManagerCallerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _IAgentManager.Contract.AgentStatus(&_IAgentManager.CallOpts, agent) } // DisputeStatus is a free data retrieval call binding the contract method 0x3463d1b1. // // Solidity: function disputeStatus(address agent) view returns(uint8 flag, address rival, address fraudProver, uint256 disputePtr) func (_IAgentManager *IAgentManagerCaller) DisputeStatus(opts *bind.CallOpts, agent common.Address) (struct { Flag uint8 Rival common.Address FraudProver common.Address DisputePtr *big.Int }, error) { var out []interface{} err := _IAgentManager.contract.Call(opts, &out, "disputeStatus", agent) outstruct := new(struct { Flag uint8 Rival common.Address FraudProver common.Address DisputePtr *big.Int }) if err != nil { return *outstruct, err } outstruct.Flag = *abi.ConvertType(out[0], new(uint8)).(*uint8) outstruct.Rival = *abi.ConvertType(out[1], new(common.Address)).(*common.Address) outstruct.FraudProver = *abi.ConvertType(out[2], new(common.Address)).(*common.Address) outstruct.DisputePtr = *abi.ConvertType(out[3], new(*big.Int)).(**big.Int) return *outstruct, err } // DisputeStatus is a free data retrieval call binding the contract method 0x3463d1b1. // // Solidity: function disputeStatus(address agent) view returns(uint8 flag, address rival, address fraudProver, uint256 disputePtr) func (_IAgentManager *IAgentManagerSession) DisputeStatus(agent common.Address) (struct { Flag uint8 Rival common.Address FraudProver common.Address DisputePtr *big.Int }, error) { return _IAgentManager.Contract.DisputeStatus(&_IAgentManager.CallOpts, agent) } // DisputeStatus is a free data retrieval call binding the contract method 0x3463d1b1. // // Solidity: function disputeStatus(address agent) view returns(uint8 flag, address rival, address fraudProver, uint256 disputePtr) func (_IAgentManager *IAgentManagerCallerSession) DisputeStatus(agent common.Address) (struct { Flag uint8 Rival common.Address FraudProver common.Address DisputePtr *big.Int }, error) { return _IAgentManager.Contract.DisputeStatus(&_IAgentManager.CallOpts, agent) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_IAgentManager *IAgentManagerCaller) GetAgent(opts *bind.CallOpts, index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { var out []interface{} err := _IAgentManager.contract.Call(opts, &out, "getAgent", index) outstruct := new(struct { Agent common.Address Status AgentStatus }) if err != nil { return *outstruct, err } outstruct.Agent = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Status = *abi.ConvertType(out[1], new(AgentStatus)).(*AgentStatus) return *outstruct, err } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_IAgentManager *IAgentManagerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _IAgentManager.Contract.GetAgent(&_IAgentManager.CallOpts, index) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_IAgentManager *IAgentManagerCallerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _IAgentManager.Contract.GetAgent(&_IAgentManager.CallOpts, index) } // GetDispute is a free data retrieval call binding the contract method 0xe3a96cbd. // // Solidity: function getDispute(uint256 index) view returns(address guard, address notary, address slashedAgent, address fraudProver, bytes reportPayload, bytes reportSignature) func (_IAgentManager *IAgentManagerCaller) GetDispute(opts *bind.CallOpts, index *big.Int) (struct { Guard common.Address Notary common.Address SlashedAgent common.Address FraudProver common.Address ReportPayload []byte ReportSignature []byte }, error) { var out []interface{} err := _IAgentManager.contract.Call(opts, &out, "getDispute", index) outstruct := new(struct { Guard common.Address Notary common.Address SlashedAgent common.Address FraudProver common.Address ReportPayload []byte ReportSignature []byte }) if err != nil { return *outstruct, err } outstruct.Guard = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Notary = *abi.ConvertType(out[1], new(common.Address)).(*common.Address) outstruct.SlashedAgent = *abi.ConvertType(out[2], new(common.Address)).(*common.Address) outstruct.FraudProver = *abi.ConvertType(out[3], new(common.Address)).(*common.Address) outstruct.ReportPayload = *abi.ConvertType(out[4], new([]byte)).(*[]byte) outstruct.ReportSignature = *abi.ConvertType(out[5], new([]byte)).(*[]byte) return *outstruct, err } // GetDispute is a free data retrieval call binding the contract method 0xe3a96cbd. // // Solidity: function getDispute(uint256 index) view returns(address guard, address notary, address slashedAgent, address fraudProver, bytes reportPayload, bytes reportSignature) func (_IAgentManager *IAgentManagerSession) GetDispute(index *big.Int) (struct { Guard common.Address Notary common.Address SlashedAgent common.Address FraudProver common.Address ReportPayload []byte ReportSignature []byte }, error) { return _IAgentManager.Contract.GetDispute(&_IAgentManager.CallOpts, index) } // GetDispute is a free data retrieval call binding the contract method 0xe3a96cbd. // // Solidity: function getDispute(uint256 index) view returns(address guard, address notary, address slashedAgent, address fraudProver, bytes reportPayload, bytes reportSignature) func (_IAgentManager *IAgentManagerCallerSession) GetDispute(index *big.Int) (struct { Guard common.Address Notary common.Address SlashedAgent common.Address FraudProver common.Address ReportPayload []byte ReportSignature []byte }, error) { return _IAgentManager.Contract.GetDispute(&_IAgentManager.CallOpts, index) } // GetDisputesAmount is a free data retrieval call binding the contract method 0x3aaeccc6. // // Solidity: function getDisputesAmount() view returns(uint256) func (_IAgentManager *IAgentManagerCaller) GetDisputesAmount(opts *bind.CallOpts) (*big.Int, error) { var out []interface{} err := _IAgentManager.contract.Call(opts, &out, "getDisputesAmount") if err != nil { return *new(*big.Int), err } out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) return out0, err } // GetDisputesAmount is a free data retrieval call binding the contract method 0x3aaeccc6. // // Solidity: function getDisputesAmount() view returns(uint256) func (_IAgentManager *IAgentManagerSession) GetDisputesAmount() (*big.Int, error) { return _IAgentManager.Contract.GetDisputesAmount(&_IAgentManager.CallOpts) } // GetDisputesAmount is a free data retrieval call binding the contract method 0x3aaeccc6. // // Solidity: function getDisputesAmount() view returns(uint256) func (_IAgentManager *IAgentManagerCallerSession) GetDisputesAmount() (*big.Int, error) { return _IAgentManager.Contract.GetDisputesAmount(&_IAgentManager.CallOpts) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_IAgentManager *IAgentManagerTransactor) OpenDispute(opts *bind.TransactOpts, guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _IAgentManager.contract.Transact(opts, "openDispute", guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_IAgentManager *IAgentManagerSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _IAgentManager.Contract.OpenDispute(&_IAgentManager.TransactOpts, guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_IAgentManager *IAgentManagerTransactorSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _IAgentManager.Contract.OpenDispute(&_IAgentManager.TransactOpts, guardIndex, notaryIndex) } // SlashAgent is a paid mutator transaction binding the contract method 0x2853a0e6. // // Solidity: function slashAgent(uint32 domain, address agent, address prover) returns() func (_IAgentManager *IAgentManagerTransactor) SlashAgent(opts *bind.TransactOpts, domain uint32, agent common.Address, prover common.Address) (*types.Transaction, error) { return _IAgentManager.contract.Transact(opts, "slashAgent", domain, agent, prover) } // SlashAgent is a paid mutator transaction binding the contract method 0x2853a0e6. // // Solidity: function slashAgent(uint32 domain, address agent, address prover) returns() func (_IAgentManager *IAgentManagerSession) SlashAgent(domain uint32, agent common.Address, prover common.Address) (*types.Transaction, error) { return _IAgentManager.Contract.SlashAgent(&_IAgentManager.TransactOpts, domain, agent, prover) } // SlashAgent is a paid mutator transaction binding the contract method 0x2853a0e6. // // Solidity: function slashAgent(uint32 domain, address agent, address prover) returns() func (_IAgentManager *IAgentManagerTransactorSession) SlashAgent(domain uint32, agent common.Address, prover common.Address) (*types.Transaction, error) { return _IAgentManager.Contract.SlashAgent(&_IAgentManager.TransactOpts, domain, agent, prover) } // IAgentSecuredMetaData contains all meta data concerning the IAgentSecured contract. var IAgentSecuredMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"agentManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"}],\"name\":\"agentStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAgent\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"inbox\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"agentIndex\",\"type\":\"uint32\"}],\"name\":\"latestDisputeStatus\",\"outputs\":[{\"components\":[{\"internalType\":\"enumDisputeFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"openedAt\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"resolvedAt\",\"type\":\"uint40\"}],\"internalType\":\"structDisputeStatus\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"guardIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"openDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"slashedIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rivalIndex\",\"type\":\"uint32\"}],\"name\":\"resolveDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "7622f78d": "agentManager()", "28f3fac9": "agentStatus(address)", "2de5aaf7": "getAgent(uint256)", "fb0e722b": "inbox()", "dfadd81a": "latestDisputeStatus(uint32)", "a2155c34": "openDispute(uint32,uint32)", "61169218": "resolveDispute(uint32,uint32)", }, } // IAgentSecuredABI is the input ABI used to generate the binding from. // Deprecated: Use IAgentSecuredMetaData.ABI instead. var IAgentSecuredABI = IAgentSecuredMetaData.ABI // Deprecated: Use IAgentSecuredMetaData.Sigs instead. // IAgentSecuredFuncSigs maps the 4-byte function signature to its string representation. var IAgentSecuredFuncSigs = IAgentSecuredMetaData.Sigs // IAgentSecured is an auto generated Go binding around an Ethereum contract. type IAgentSecured struct { IAgentSecuredCaller // Read-only binding to the contract IAgentSecuredTransactor // Write-only binding to the contract IAgentSecuredFilterer // Log filterer for contract events } // IAgentSecuredCaller is an auto generated read-only Go binding around an Ethereum contract. type IAgentSecuredCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IAgentSecuredTransactor is an auto generated write-only Go binding around an Ethereum contract. type IAgentSecuredTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IAgentSecuredFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type IAgentSecuredFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IAgentSecuredSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type IAgentSecuredSession struct { Contract *IAgentSecured // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IAgentSecuredCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type IAgentSecuredCallerSession struct { Contract *IAgentSecuredCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // IAgentSecuredTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type IAgentSecuredTransactorSession struct { Contract *IAgentSecuredTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IAgentSecuredRaw is an auto generated low-level Go binding around an Ethereum contract. type IAgentSecuredRaw struct { Contract *IAgentSecured // Generic contract binding to access the raw methods on } // IAgentSecuredCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type IAgentSecuredCallerRaw struct { Contract *IAgentSecuredCaller // Generic read-only contract binding to access the raw methods on } // IAgentSecuredTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type IAgentSecuredTransactorRaw struct { Contract *IAgentSecuredTransactor // Generic write-only contract binding to access the raw methods on } // NewIAgentSecured creates a new instance of IAgentSecured, bound to a specific deployed contract. func NewIAgentSecured(address common.Address, backend bind.ContractBackend) (*IAgentSecured, error) { contract, err := bindIAgentSecured(address, backend, backend, backend) if err != nil { return nil, err } return &IAgentSecured{IAgentSecuredCaller: IAgentSecuredCaller{contract: contract}, IAgentSecuredTransactor: IAgentSecuredTransactor{contract: contract}, IAgentSecuredFilterer: IAgentSecuredFilterer{contract: contract}}, nil } // NewIAgentSecuredCaller creates a new read-only instance of IAgentSecured, bound to a specific deployed contract. func NewIAgentSecuredCaller(address common.Address, caller bind.ContractCaller) (*IAgentSecuredCaller, error) { contract, err := bindIAgentSecured(address, caller, nil, nil) if err != nil { return nil, err } return &IAgentSecuredCaller{contract: contract}, nil } // NewIAgentSecuredTransactor creates a new write-only instance of IAgentSecured, bound to a specific deployed contract. func NewIAgentSecuredTransactor(address common.Address, transactor bind.ContractTransactor) (*IAgentSecuredTransactor, error) { contract, err := bindIAgentSecured(address, nil, transactor, nil) if err != nil { return nil, err } return &IAgentSecuredTransactor{contract: contract}, nil } // NewIAgentSecuredFilterer creates a new log filterer instance of IAgentSecured, bound to a specific deployed contract. func NewIAgentSecuredFilterer(address common.Address, filterer bind.ContractFilterer) (*IAgentSecuredFilterer, error) { contract, err := bindIAgentSecured(address, nil, nil, filterer) if err != nil { return nil, err } return &IAgentSecuredFilterer{contract: contract}, nil } // bindIAgentSecured binds a generic wrapper to an already deployed contract. func bindIAgentSecured(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := IAgentSecuredMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IAgentSecured *IAgentSecuredRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IAgentSecured.Contract.IAgentSecuredCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IAgentSecured *IAgentSecuredRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IAgentSecured.Contract.IAgentSecuredTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IAgentSecured *IAgentSecuredRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IAgentSecured.Contract.IAgentSecuredTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IAgentSecured *IAgentSecuredCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IAgentSecured.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IAgentSecured *IAgentSecuredTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IAgentSecured.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IAgentSecured *IAgentSecuredTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IAgentSecured.Contract.contract.Transact(opts, method, params...) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_IAgentSecured *IAgentSecuredCaller) AgentManager(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _IAgentSecured.contract.Call(opts, &out, "agentManager") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_IAgentSecured *IAgentSecuredSession) AgentManager() (common.Address, error) { return _IAgentSecured.Contract.AgentManager(&_IAgentSecured.CallOpts) } // AgentManager is a free data retrieval call binding the contract method 0x7622f78d. // // Solidity: function agentManager() view returns(address) func (_IAgentSecured *IAgentSecuredCallerSession) AgentManager() (common.Address, error) { return _IAgentSecured.Contract.AgentManager(&_IAgentSecured.CallOpts) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_IAgentSecured *IAgentSecuredCaller) AgentStatus(opts *bind.CallOpts, agent common.Address) (AgentStatus, error) { var out []interface{} err := _IAgentSecured.contract.Call(opts, &out, "agentStatus", agent) if err != nil { return *new(AgentStatus), err } out0 := *abi.ConvertType(out[0], new(AgentStatus)).(*AgentStatus) return out0, err } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_IAgentSecured *IAgentSecuredSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _IAgentSecured.Contract.AgentStatus(&_IAgentSecured.CallOpts, agent) } // AgentStatus is a free data retrieval call binding the contract method 0x28f3fac9. // // Solidity: function agentStatus(address agent) view returns((uint8,uint32,uint32)) func (_IAgentSecured *IAgentSecuredCallerSession) AgentStatus(agent common.Address) (AgentStatus, error) { return _IAgentSecured.Contract.AgentStatus(&_IAgentSecured.CallOpts, agent) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_IAgentSecured *IAgentSecuredCaller) GetAgent(opts *bind.CallOpts, index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { var out []interface{} err := _IAgentSecured.contract.Call(opts, &out, "getAgent", index) outstruct := new(struct { Agent common.Address Status AgentStatus }) if err != nil { return *outstruct, err } outstruct.Agent = *abi.ConvertType(out[0], new(common.Address)).(*common.Address) outstruct.Status = *abi.ConvertType(out[1], new(AgentStatus)).(*AgentStatus) return *outstruct, err } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_IAgentSecured *IAgentSecuredSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _IAgentSecured.Contract.GetAgent(&_IAgentSecured.CallOpts, index) } // GetAgent is a free data retrieval call binding the contract method 0x2de5aaf7. // // Solidity: function getAgent(uint256 index) view returns(address agent, (uint8,uint32,uint32) status) func (_IAgentSecured *IAgentSecuredCallerSession) GetAgent(index *big.Int) (struct { Agent common.Address Status AgentStatus }, error) { return _IAgentSecured.Contract.GetAgent(&_IAgentSecured.CallOpts, index) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_IAgentSecured *IAgentSecuredCaller) Inbox(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _IAgentSecured.contract.Call(opts, &out, "inbox") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_IAgentSecured *IAgentSecuredSession) Inbox() (common.Address, error) { return _IAgentSecured.Contract.Inbox(&_IAgentSecured.CallOpts) } // Inbox is a free data retrieval call binding the contract method 0xfb0e722b. // // Solidity: function inbox() view returns(address) func (_IAgentSecured *IAgentSecuredCallerSession) Inbox() (common.Address, error) { return _IAgentSecured.Contract.Inbox(&_IAgentSecured.CallOpts) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_IAgentSecured *IAgentSecuredCaller) LatestDisputeStatus(opts *bind.CallOpts, agentIndex uint32) (DisputeStatus, error) { var out []interface{} err := _IAgentSecured.contract.Call(opts, &out, "latestDisputeStatus", agentIndex) if err != nil { return *new(DisputeStatus), err } out0 := *abi.ConvertType(out[0], new(DisputeStatus)).(*DisputeStatus) return out0, err } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_IAgentSecured *IAgentSecuredSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _IAgentSecured.Contract.LatestDisputeStatus(&_IAgentSecured.CallOpts, agentIndex) } // LatestDisputeStatus is a free data retrieval call binding the contract method 0xdfadd81a. // // Solidity: function latestDisputeStatus(uint32 agentIndex) view returns((uint8,uint40,uint40)) func (_IAgentSecured *IAgentSecuredCallerSession) LatestDisputeStatus(agentIndex uint32) (DisputeStatus, error) { return _IAgentSecured.Contract.LatestDisputeStatus(&_IAgentSecured.CallOpts, agentIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_IAgentSecured *IAgentSecuredTransactor) OpenDispute(opts *bind.TransactOpts, guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _IAgentSecured.contract.Transact(opts, "openDispute", guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_IAgentSecured *IAgentSecuredSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _IAgentSecured.Contract.OpenDispute(&_IAgentSecured.TransactOpts, guardIndex, notaryIndex) } // OpenDispute is a paid mutator transaction binding the contract method 0xa2155c34. // // Solidity: function openDispute(uint32 guardIndex, uint32 notaryIndex) returns() func (_IAgentSecured *IAgentSecuredTransactorSession) OpenDispute(guardIndex uint32, notaryIndex uint32) (*types.Transaction, error) { return _IAgentSecured.Contract.OpenDispute(&_IAgentSecured.TransactOpts, guardIndex, notaryIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_IAgentSecured *IAgentSecuredTransactor) ResolveDispute(opts *bind.TransactOpts, slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _IAgentSecured.contract.Transact(opts, "resolveDispute", slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_IAgentSecured *IAgentSecuredSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _IAgentSecured.Contract.ResolveDispute(&_IAgentSecured.TransactOpts, slashedIndex, rivalIndex) } // ResolveDispute is a paid mutator transaction binding the contract method 0x61169218. // // Solidity: function resolveDispute(uint32 slashedIndex, uint32 rivalIndex) returns() func (_IAgentSecured *IAgentSecuredTransactorSession) ResolveDispute(slashedIndex uint32, rivalIndex uint32) (*types.Transaction, error) { return _IAgentSecured.Contract.ResolveDispute(&_IAgentSecured.TransactOpts, slashedIndex, rivalIndex) } // IExecutionHubMetaData contains all meta data concerning the IExecutionHub contract. var IExecutionHubMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"msgPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[]\",\"name\":\"originProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"snapProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"gasLimit\",\"type\":\"uint64\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"snapRoot\",\"type\":\"bytes32\"}],\"name\":\"getAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"attNonce\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"name\":\"isValidReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValid\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageReceipt\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"messageHash\",\"type\":\"bytes32\"}],\"name\":\"messageStatus\",\"outputs\":[{\"internalType\":\"enumMessageStatus\",\"name\":\"status\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "883099bc": "execute(bytes,bytes32[],bytes32[],uint8,uint64)", "4f127567": "getAttestationNonce(bytes32)", "e2f006f7": "isValidReceipt(bytes)", "daa74a9e": "messageReceipt(bytes32)", "3c6cf473": "messageStatus(bytes32)", }, } // IExecutionHubABI is the input ABI used to generate the binding from. // Deprecated: Use IExecutionHubMetaData.ABI instead. var IExecutionHubABI = IExecutionHubMetaData.ABI // Deprecated: Use IExecutionHubMetaData.Sigs instead. // IExecutionHubFuncSigs maps the 4-byte function signature to its string representation. var IExecutionHubFuncSigs = IExecutionHubMetaData.Sigs // IExecutionHub is an auto generated Go binding around an Ethereum contract. type IExecutionHub struct { IExecutionHubCaller // Read-only binding to the contract IExecutionHubTransactor // Write-only binding to the contract IExecutionHubFilterer // Log filterer for contract events } // IExecutionHubCaller is an auto generated read-only Go binding around an Ethereum contract. type IExecutionHubCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IExecutionHubTransactor is an auto generated write-only Go binding around an Ethereum contract. type IExecutionHubTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IExecutionHubFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type IExecutionHubFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IExecutionHubSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type IExecutionHubSession struct { Contract *IExecutionHub // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IExecutionHubCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type IExecutionHubCallerSession struct { Contract *IExecutionHubCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // IExecutionHubTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type IExecutionHubTransactorSession struct { Contract *IExecutionHubTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IExecutionHubRaw is an auto generated low-level Go binding around an Ethereum contract. type IExecutionHubRaw struct { Contract *IExecutionHub // Generic contract binding to access the raw methods on } // IExecutionHubCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type IExecutionHubCallerRaw struct { Contract *IExecutionHubCaller // Generic read-only contract binding to access the raw methods on } // IExecutionHubTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type IExecutionHubTransactorRaw struct { Contract *IExecutionHubTransactor // Generic write-only contract binding to access the raw methods on } // NewIExecutionHub creates a new instance of IExecutionHub, bound to a specific deployed contract. func NewIExecutionHub(address common.Address, backend bind.ContractBackend) (*IExecutionHub, error) { contract, err := bindIExecutionHub(address, backend, backend, backend) if err != nil { return nil, err } return &IExecutionHub{IExecutionHubCaller: IExecutionHubCaller{contract: contract}, IExecutionHubTransactor: IExecutionHubTransactor{contract: contract}, IExecutionHubFilterer: IExecutionHubFilterer{contract: contract}}, nil } // NewIExecutionHubCaller creates a new read-only instance of IExecutionHub, bound to a specific deployed contract. func NewIExecutionHubCaller(address common.Address, caller bind.ContractCaller) (*IExecutionHubCaller, error) { contract, err := bindIExecutionHub(address, caller, nil, nil) if err != nil { return nil, err } return &IExecutionHubCaller{contract: contract}, nil } // NewIExecutionHubTransactor creates a new write-only instance of IExecutionHub, bound to a specific deployed contract. func NewIExecutionHubTransactor(address common.Address, transactor bind.ContractTransactor) (*IExecutionHubTransactor, error) { contract, err := bindIExecutionHub(address, nil, transactor, nil) if err != nil { return nil, err } return &IExecutionHubTransactor{contract: contract}, nil } // NewIExecutionHubFilterer creates a new log filterer instance of IExecutionHub, bound to a specific deployed contract. func NewIExecutionHubFilterer(address common.Address, filterer bind.ContractFilterer) (*IExecutionHubFilterer, error) { contract, err := bindIExecutionHub(address, nil, nil, filterer) if err != nil { return nil, err } return &IExecutionHubFilterer{contract: contract}, nil } // bindIExecutionHub binds a generic wrapper to an already deployed contract. func bindIExecutionHub(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := IExecutionHubMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IExecutionHub *IExecutionHubRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IExecutionHub.Contract.IExecutionHubCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IExecutionHub *IExecutionHubRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IExecutionHub.Contract.IExecutionHubTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IExecutionHub *IExecutionHubRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IExecutionHub.Contract.IExecutionHubTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IExecutionHub *IExecutionHubCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IExecutionHub.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IExecutionHub *IExecutionHubTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IExecutionHub.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IExecutionHub *IExecutionHubTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IExecutionHub.Contract.contract.Transact(opts, method, params...) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_IExecutionHub *IExecutionHubCaller) GetAttestationNonce(opts *bind.CallOpts, snapRoot [32]byte) (uint32, error) { var out []interface{} err := _IExecutionHub.contract.Call(opts, &out, "getAttestationNonce", snapRoot) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_IExecutionHub *IExecutionHubSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _IExecutionHub.Contract.GetAttestationNonce(&_IExecutionHub.CallOpts, snapRoot) } // GetAttestationNonce is a free data retrieval call binding the contract method 0x4f127567. // // Solidity: function getAttestationNonce(bytes32 snapRoot) view returns(uint32 attNonce) func (_IExecutionHub *IExecutionHubCallerSession) GetAttestationNonce(snapRoot [32]byte) (uint32, error) { return _IExecutionHub.Contract.GetAttestationNonce(&_IExecutionHub.CallOpts, snapRoot) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_IExecutionHub *IExecutionHubCaller) IsValidReceipt(opts *bind.CallOpts, rcptPayload []byte) (bool, error) { var out []interface{} err := _IExecutionHub.contract.Call(opts, &out, "isValidReceipt", rcptPayload) if err != nil { return *new(bool), err } out0 := *abi.ConvertType(out[0], new(bool)).(*bool) return out0, err } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_IExecutionHub *IExecutionHubSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _IExecutionHub.Contract.IsValidReceipt(&_IExecutionHub.CallOpts, rcptPayload) } // IsValidReceipt is a free data retrieval call binding the contract method 0xe2f006f7. // // Solidity: function isValidReceipt(bytes rcptPayload) view returns(bool isValid) func (_IExecutionHub *IExecutionHubCallerSession) IsValidReceipt(rcptPayload []byte) (bool, error) { return _IExecutionHub.Contract.IsValidReceipt(&_IExecutionHub.CallOpts, rcptPayload) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes data) func (_IExecutionHub *IExecutionHubCaller) MessageReceipt(opts *bind.CallOpts, messageHash [32]byte) ([]byte, error) { var out []interface{} err := _IExecutionHub.contract.Call(opts, &out, "messageReceipt", messageHash) if err != nil { return *new([]byte), err } out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) return out0, err } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes data) func (_IExecutionHub *IExecutionHubSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _IExecutionHub.Contract.MessageReceipt(&_IExecutionHub.CallOpts, messageHash) } // MessageReceipt is a free data retrieval call binding the contract method 0xdaa74a9e. // // Solidity: function messageReceipt(bytes32 messageHash) view returns(bytes data) func (_IExecutionHub *IExecutionHubCallerSession) MessageReceipt(messageHash [32]byte) ([]byte, error) { return _IExecutionHub.Contract.MessageReceipt(&_IExecutionHub.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_IExecutionHub *IExecutionHubCaller) MessageStatus(opts *bind.CallOpts, messageHash [32]byte) (uint8, error) { var out []interface{} err := _IExecutionHub.contract.Call(opts, &out, "messageStatus", messageHash) if err != nil { return *new(uint8), err } out0 := *abi.ConvertType(out[0], new(uint8)).(*uint8) return out0, err } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_IExecutionHub *IExecutionHubSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _IExecutionHub.Contract.MessageStatus(&_IExecutionHub.CallOpts, messageHash) } // MessageStatus is a free data retrieval call binding the contract method 0x3c6cf473. // // Solidity: function messageStatus(bytes32 messageHash) view returns(uint8 status) func (_IExecutionHub *IExecutionHubCallerSession) MessageStatus(messageHash [32]byte) (uint8, error) { return _IExecutionHub.Contract.MessageStatus(&_IExecutionHub.CallOpts, messageHash) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_IExecutionHub *IExecutionHubTransactor) Execute(opts *bind.TransactOpts, msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _IExecutionHub.contract.Transact(opts, "execute", msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_IExecutionHub *IExecutionHubSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _IExecutionHub.Contract.Execute(&_IExecutionHub.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // Execute is a paid mutator transaction binding the contract method 0x883099bc. // // Solidity: function execute(bytes msgPayload, bytes32[] originProof, bytes32[] snapProof, uint8 stateIndex, uint64 gasLimit) returns() func (_IExecutionHub *IExecutionHubTransactorSession) Execute(msgPayload []byte, originProof [][32]byte, snapProof [][32]byte, stateIndex uint8, gasLimit uint64) (*types.Transaction, error) { return _IExecutionHub.Contract.Execute(&_IExecutionHub.TransactOpts, msgPayload, originProof, snapProof, stateIndex, gasLimit) } // IMessageRecipientMetaData contains all meta data concerning the IMessageRecipient contract. var IMessageRecipientMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"origin\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"nonce\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"sender\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"proofMaturity\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"},{\"internalType\":\"bytes\",\"name\":\"content\",\"type\":\"bytes\"}],\"name\":\"receiveBaseMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}]", Sigs: map[string]string{ "032f287e": "receiveBaseMessage(uint32,uint32,bytes32,uint256,uint32,bytes)", }, } // IMessageRecipientABI is the input ABI used to generate the binding from. // Deprecated: Use IMessageRecipientMetaData.ABI instead. var IMessageRecipientABI = IMessageRecipientMetaData.ABI // Deprecated: Use IMessageRecipientMetaData.Sigs instead. // IMessageRecipientFuncSigs maps the 4-byte function signature to its string representation. var IMessageRecipientFuncSigs = IMessageRecipientMetaData.Sigs // IMessageRecipient is an auto generated Go binding around an Ethereum contract. type IMessageRecipient struct { IMessageRecipientCaller // Read-only binding to the contract IMessageRecipientTransactor // Write-only binding to the contract IMessageRecipientFilterer // Log filterer for contract events } // IMessageRecipientCaller is an auto generated read-only Go binding around an Ethereum contract. type IMessageRecipientCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IMessageRecipientTransactor is an auto generated write-only Go binding around an Ethereum contract. type IMessageRecipientTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IMessageRecipientFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type IMessageRecipientFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IMessageRecipientSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type IMessageRecipientSession struct { Contract *IMessageRecipient // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IMessageRecipientCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type IMessageRecipientCallerSession struct { Contract *IMessageRecipientCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // IMessageRecipientTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type IMessageRecipientTransactorSession struct { Contract *IMessageRecipientTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IMessageRecipientRaw is an auto generated low-level Go binding around an Ethereum contract. type IMessageRecipientRaw struct { Contract *IMessageRecipient // Generic contract binding to access the raw methods on } // IMessageRecipientCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type IMessageRecipientCallerRaw struct { Contract *IMessageRecipientCaller // Generic read-only contract binding to access the raw methods on } // IMessageRecipientTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type IMessageRecipientTransactorRaw struct { Contract *IMessageRecipientTransactor // Generic write-only contract binding to access the raw methods on } // NewIMessageRecipient creates a new instance of IMessageRecipient, bound to a specific deployed contract. func NewIMessageRecipient(address common.Address, backend bind.ContractBackend) (*IMessageRecipient, error) { contract, err := bindIMessageRecipient(address, backend, backend, backend) if err != nil { return nil, err } return &IMessageRecipient{IMessageRecipientCaller: IMessageRecipientCaller{contract: contract}, IMessageRecipientTransactor: IMessageRecipientTransactor{contract: contract}, IMessageRecipientFilterer: IMessageRecipientFilterer{contract: contract}}, nil } // NewIMessageRecipientCaller creates a new read-only instance of IMessageRecipient, bound to a specific deployed contract. func NewIMessageRecipientCaller(address common.Address, caller bind.ContractCaller) (*IMessageRecipientCaller, error) { contract, err := bindIMessageRecipient(address, caller, nil, nil) if err != nil { return nil, err } return &IMessageRecipientCaller{contract: contract}, nil } // NewIMessageRecipientTransactor creates a new write-only instance of IMessageRecipient, bound to a specific deployed contract. func NewIMessageRecipientTransactor(address common.Address, transactor bind.ContractTransactor) (*IMessageRecipientTransactor, error) { contract, err := bindIMessageRecipient(address, nil, transactor, nil) if err != nil { return nil, err } return &IMessageRecipientTransactor{contract: contract}, nil } // NewIMessageRecipientFilterer creates a new log filterer instance of IMessageRecipient, bound to a specific deployed contract. func NewIMessageRecipientFilterer(address common.Address, filterer bind.ContractFilterer) (*IMessageRecipientFilterer, error) { contract, err := bindIMessageRecipient(address, nil, nil, filterer) if err != nil { return nil, err } return &IMessageRecipientFilterer{contract: contract}, nil } // bindIMessageRecipient binds a generic wrapper to an already deployed contract. func bindIMessageRecipient(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := IMessageRecipientMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IMessageRecipient *IMessageRecipientRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IMessageRecipient.Contract.IMessageRecipientCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IMessageRecipient *IMessageRecipientRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IMessageRecipient.Contract.IMessageRecipientTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IMessageRecipient *IMessageRecipientRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IMessageRecipient.Contract.IMessageRecipientTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IMessageRecipient *IMessageRecipientCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IMessageRecipient.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IMessageRecipient *IMessageRecipientTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IMessageRecipient.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IMessageRecipient *IMessageRecipientTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IMessageRecipient.Contract.contract.Transact(opts, method, params...) } // ReceiveBaseMessage is a paid mutator transaction binding the contract method 0x032f287e. // // Solidity: function receiveBaseMessage(uint32 origin, uint32 nonce, bytes32 sender, uint256 proofMaturity, uint32 version, bytes content) payable returns() func (_IMessageRecipient *IMessageRecipientTransactor) ReceiveBaseMessage(opts *bind.TransactOpts, origin uint32, nonce uint32, sender [32]byte, proofMaturity *big.Int, version uint32, content []byte) (*types.Transaction, error) { return _IMessageRecipient.contract.Transact(opts, "receiveBaseMessage", origin, nonce, sender, proofMaturity, version, content) } // ReceiveBaseMessage is a paid mutator transaction binding the contract method 0x032f287e. // // Solidity: function receiveBaseMessage(uint32 origin, uint32 nonce, bytes32 sender, uint256 proofMaturity, uint32 version, bytes content) payable returns() func (_IMessageRecipient *IMessageRecipientSession) ReceiveBaseMessage(origin uint32, nonce uint32, sender [32]byte, proofMaturity *big.Int, version uint32, content []byte) (*types.Transaction, error) { return _IMessageRecipient.Contract.ReceiveBaseMessage(&_IMessageRecipient.TransactOpts, origin, nonce, sender, proofMaturity, version, content) } // ReceiveBaseMessage is a paid mutator transaction binding the contract method 0x032f287e. // // Solidity: function receiveBaseMessage(uint32 origin, uint32 nonce, bytes32 sender, uint256 proofMaturity, uint32 version, bytes content) payable returns() func (_IMessageRecipient *IMessageRecipientTransactorSession) ReceiveBaseMessage(origin uint32, nonce uint32, sender [32]byte, proofMaturity *big.Int, version uint32, content []byte) (*types.Transaction, error) { return _IMessageRecipient.Contract.ReceiveBaseMessage(&_IMessageRecipient.TransactOpts, origin, nonce, sender, proofMaturity, version, content) } // IStatementInboxMetaData contains all meta data concerning the IStatementInbox contract. var IStatementInboxMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getGuardReport\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"statementPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"reportSignature\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getReportsAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getStoredSignature\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"srSignature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"snapPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"name\":\"submitStateReportWithAttestation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"srSignature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"snapPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"snapSignature\",\"type\":\"bytes\"}],\"name\":\"submitStateReportWithSnapshot\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"statePayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"srSignature\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[]\",\"name\":\"snapProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"name\":\"submitStateReportWithSnapshotProof\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rcptSignature\",\"type\":\"bytes\"}],\"name\":\"verifyReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidReceipt\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rrSignature\",\"type\":\"bytes\"}],\"name\":\"verifyReceiptReport\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidReport\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"statePayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"srSignature\",\"type\":\"bytes\"}],\"name\":\"verifyStateReport\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidReport\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"snapPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"name\":\"verifyStateWithAttestation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidState\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"snapPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"snapSignature\",\"type\":\"bytes\"}],\"name\":\"verifyStateWithSnapshot\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidState\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"stateIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"statePayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32[]\",\"name\":\"snapProof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"name\":\"verifyStateWithSnapshotProof\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidState\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "c495912b": "getGuardReport(uint256)", "756ed01d": "getReportsAmount()", "ddeffa66": "getStoredSignature(uint256)", "243b9224": "submitStateReportWithAttestation(uint8,bytes,bytes,bytes,bytes)", "333138e2": "submitStateReportWithSnapshot(uint8,bytes,bytes,bytes)", "be7e63da": "submitStateReportWithSnapshotProof(uint8,bytes,bytes,bytes32[],bytes,bytes)", "c25aa585": "verifyReceipt(bytes,bytes)", "91af2e5d": "verifyReceiptReport(bytes,bytes)", "dfe39675": "verifyStateReport(bytes,bytes)", "7d9978ae": "verifyStateWithAttestation(uint8,bytes,bytes,bytes)", "8671012e": "verifyStateWithSnapshot(uint8,bytes,bytes)", "e3097af8": "verifyStateWithSnapshotProof(uint8,bytes,bytes32[],bytes,bytes)", }, } // IStatementInboxABI is the input ABI used to generate the binding from. // Deprecated: Use IStatementInboxMetaData.ABI instead. var IStatementInboxABI = IStatementInboxMetaData.ABI // Deprecated: Use IStatementInboxMetaData.Sigs instead. // IStatementInboxFuncSigs maps the 4-byte function signature to its string representation. var IStatementInboxFuncSigs = IStatementInboxMetaData.Sigs // IStatementInbox is an auto generated Go binding around an Ethereum contract. type IStatementInbox struct { IStatementInboxCaller // Read-only binding to the contract IStatementInboxTransactor // Write-only binding to the contract IStatementInboxFilterer // Log filterer for contract events } // IStatementInboxCaller is an auto generated read-only Go binding around an Ethereum contract. type IStatementInboxCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IStatementInboxTransactor is an auto generated write-only Go binding around an Ethereum contract. type IStatementInboxTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IStatementInboxFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type IStatementInboxFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // IStatementInboxSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type IStatementInboxSession struct { Contract *IStatementInbox // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IStatementInboxCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type IStatementInboxCallerSession struct { Contract *IStatementInboxCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // IStatementInboxTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type IStatementInboxTransactorSession struct { Contract *IStatementInboxTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // IStatementInboxRaw is an auto generated low-level Go binding around an Ethereum contract. type IStatementInboxRaw struct { Contract *IStatementInbox // Generic contract binding to access the raw methods on } // IStatementInboxCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type IStatementInboxCallerRaw struct { Contract *IStatementInboxCaller // Generic read-only contract binding to access the raw methods on } // IStatementInboxTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type IStatementInboxTransactorRaw struct { Contract *IStatementInboxTransactor // Generic write-only contract binding to access the raw methods on } // NewIStatementInbox creates a new instance of IStatementInbox, bound to a specific deployed contract. func NewIStatementInbox(address common.Address, backend bind.ContractBackend) (*IStatementInbox, error) { contract, err := bindIStatementInbox(address, backend, backend, backend) if err != nil { return nil, err } return &IStatementInbox{IStatementInboxCaller: IStatementInboxCaller{contract: contract}, IStatementInboxTransactor: IStatementInboxTransactor{contract: contract}, IStatementInboxFilterer: IStatementInboxFilterer{contract: contract}}, nil } // NewIStatementInboxCaller creates a new read-only instance of IStatementInbox, bound to a specific deployed contract. func NewIStatementInboxCaller(address common.Address, caller bind.ContractCaller) (*IStatementInboxCaller, error) { contract, err := bindIStatementInbox(address, caller, nil, nil) if err != nil { return nil, err } return &IStatementInboxCaller{contract: contract}, nil } // NewIStatementInboxTransactor creates a new write-only instance of IStatementInbox, bound to a specific deployed contract. func NewIStatementInboxTransactor(address common.Address, transactor bind.ContractTransactor) (*IStatementInboxTransactor, error) { contract, err := bindIStatementInbox(address, nil, transactor, nil) if err != nil { return nil, err } return &IStatementInboxTransactor{contract: contract}, nil } // NewIStatementInboxFilterer creates a new log filterer instance of IStatementInbox, bound to a specific deployed contract. func NewIStatementInboxFilterer(address common.Address, filterer bind.ContractFilterer) (*IStatementInboxFilterer, error) { contract, err := bindIStatementInbox(address, nil, nil, filterer) if err != nil { return nil, err } return &IStatementInboxFilterer{contract: contract}, nil } // bindIStatementInbox binds a generic wrapper to an already deployed contract. func bindIStatementInbox(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := IStatementInboxMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IStatementInbox *IStatementInboxRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IStatementInbox.Contract.IStatementInboxCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IStatementInbox *IStatementInboxRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IStatementInbox.Contract.IStatementInboxTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IStatementInbox *IStatementInboxRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IStatementInbox.Contract.IStatementInboxTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_IStatementInbox *IStatementInboxCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _IStatementInbox.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_IStatementInbox *IStatementInboxTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _IStatementInbox.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_IStatementInbox *IStatementInboxTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _IStatementInbox.Contract.contract.Transact(opts, method, params...) } // GetGuardReport is a free data retrieval call binding the contract method 0xc495912b. // // Solidity: function getGuardReport(uint256 index) view returns(bytes statementPayload, bytes reportSignature) func (_IStatementInbox *IStatementInboxCaller) GetGuardReport(opts *bind.CallOpts, index *big.Int) (struct { StatementPayload []byte ReportSignature []byte }, error) { var out []interface{} err := _IStatementInbox.contract.Call(opts, &out, "getGuardReport", index) outstruct := new(struct { StatementPayload []byte ReportSignature []byte }) if err != nil { return *outstruct, err } outstruct.StatementPayload = *abi.ConvertType(out[0], new([]byte)).(*[]byte) outstruct.ReportSignature = *abi.ConvertType(out[1], new([]byte)).(*[]byte) return *outstruct, err } // GetGuardReport is a free data retrieval call binding the contract method 0xc495912b. // // Solidity: function getGuardReport(uint256 index) view returns(bytes statementPayload, bytes reportSignature) func (_IStatementInbox *IStatementInboxSession) GetGuardReport(index *big.Int) (struct { StatementPayload []byte ReportSignature []byte }, error) { return _IStatementInbox.Contract.GetGuardReport(&_IStatementInbox.CallOpts, index) } // GetGuardReport is a free data retrieval call binding the contract method 0xc495912b. // // Solidity: function getGuardReport(uint256 index) view returns(bytes statementPayload, bytes reportSignature) func (_IStatementInbox *IStatementInboxCallerSession) GetGuardReport(index *big.Int) (struct { StatementPayload []byte ReportSignature []byte }, error) { return _IStatementInbox.Contract.GetGuardReport(&_IStatementInbox.CallOpts, index) } // GetReportsAmount is a free data retrieval call binding the contract method 0x756ed01d. // // Solidity: function getReportsAmount() view returns(uint256) func (_IStatementInbox *IStatementInboxCaller) GetReportsAmount(opts *bind.CallOpts) (*big.Int, error) { var out []interface{} err := _IStatementInbox.contract.Call(opts, &out, "getReportsAmount") if err != nil { return *new(*big.Int), err } out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) return out0, err } // GetReportsAmount is a free data retrieval call binding the contract method 0x756ed01d. // // Solidity: function getReportsAmount() view returns(uint256) func (_IStatementInbox *IStatementInboxSession) GetReportsAmount() (*big.Int, error) { return _IStatementInbox.Contract.GetReportsAmount(&_IStatementInbox.CallOpts) } // GetReportsAmount is a free data retrieval call binding the contract method 0x756ed01d. // // Solidity: function getReportsAmount() view returns(uint256) func (_IStatementInbox *IStatementInboxCallerSession) GetReportsAmount() (*big.Int, error) { return _IStatementInbox.Contract.GetReportsAmount(&_IStatementInbox.CallOpts) } // GetStoredSignature is a free data retrieval call binding the contract method 0xddeffa66. // // Solidity: function getStoredSignature(uint256 index) view returns(bytes) func (_IStatementInbox *IStatementInboxCaller) GetStoredSignature(opts *bind.CallOpts, index *big.Int) ([]byte, error) { var out []interface{} err := _IStatementInbox.contract.Call(opts, &out, "getStoredSignature", index) if err != nil { return *new([]byte), err } out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) return out0, err } // GetStoredSignature is a free data retrieval call binding the contract method 0xddeffa66. // // Solidity: function getStoredSignature(uint256 index) view returns(bytes) func (_IStatementInbox *IStatementInboxSession) GetStoredSignature(index *big.Int) ([]byte, error) { return _IStatementInbox.Contract.GetStoredSignature(&_IStatementInbox.CallOpts, index) } // GetStoredSignature is a free data retrieval call binding the contract method 0xddeffa66. // // Solidity: function getStoredSignature(uint256 index) view returns(bytes) func (_IStatementInbox *IStatementInboxCallerSession) GetStoredSignature(index *big.Int) ([]byte, error) { return _IStatementInbox.Contract.GetStoredSignature(&_IStatementInbox.CallOpts, index) } // SubmitStateReportWithAttestation is a paid mutator transaction binding the contract method 0x243b9224. // // Solidity: function submitStateReportWithAttestation(uint8 stateIndex, bytes srSignature, bytes snapPayload, bytes attPayload, bytes attSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxTransactor) SubmitStateReportWithAttestation(opts *bind.TransactOpts, stateIndex uint8, srSignature []byte, snapPayload []byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "submitStateReportWithAttestation", stateIndex, srSignature, snapPayload, attPayload, attSignature) } // SubmitStateReportWithAttestation is a paid mutator transaction binding the contract method 0x243b9224. // // Solidity: function submitStateReportWithAttestation(uint8 stateIndex, bytes srSignature, bytes snapPayload, bytes attPayload, bytes attSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxSession) SubmitStateReportWithAttestation(stateIndex uint8, srSignature []byte, snapPayload []byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.SubmitStateReportWithAttestation(&_IStatementInbox.TransactOpts, stateIndex, srSignature, snapPayload, attPayload, attSignature) } // SubmitStateReportWithAttestation is a paid mutator transaction binding the contract method 0x243b9224. // // Solidity: function submitStateReportWithAttestation(uint8 stateIndex, bytes srSignature, bytes snapPayload, bytes attPayload, bytes attSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxTransactorSession) SubmitStateReportWithAttestation(stateIndex uint8, srSignature []byte, snapPayload []byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.SubmitStateReportWithAttestation(&_IStatementInbox.TransactOpts, stateIndex, srSignature, snapPayload, attPayload, attSignature) } // SubmitStateReportWithSnapshot is a paid mutator transaction binding the contract method 0x333138e2. // // Solidity: function submitStateReportWithSnapshot(uint8 stateIndex, bytes srSignature, bytes snapPayload, bytes snapSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxTransactor) SubmitStateReportWithSnapshot(opts *bind.TransactOpts, stateIndex uint8, srSignature []byte, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "submitStateReportWithSnapshot", stateIndex, srSignature, snapPayload, snapSignature) } // SubmitStateReportWithSnapshot is a paid mutator transaction binding the contract method 0x333138e2. // // Solidity: function submitStateReportWithSnapshot(uint8 stateIndex, bytes srSignature, bytes snapPayload, bytes snapSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxSession) SubmitStateReportWithSnapshot(stateIndex uint8, srSignature []byte, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.SubmitStateReportWithSnapshot(&_IStatementInbox.TransactOpts, stateIndex, srSignature, snapPayload, snapSignature) } // SubmitStateReportWithSnapshot is a paid mutator transaction binding the contract method 0x333138e2. // // Solidity: function submitStateReportWithSnapshot(uint8 stateIndex, bytes srSignature, bytes snapPayload, bytes snapSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxTransactorSession) SubmitStateReportWithSnapshot(stateIndex uint8, srSignature []byte, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.SubmitStateReportWithSnapshot(&_IStatementInbox.TransactOpts, stateIndex, srSignature, snapPayload, snapSignature) } // SubmitStateReportWithSnapshotProof is a paid mutator transaction binding the contract method 0xbe7e63da. // // Solidity: function submitStateReportWithSnapshotProof(uint8 stateIndex, bytes statePayload, bytes srSignature, bytes32[] snapProof, bytes attPayload, bytes attSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxTransactor) SubmitStateReportWithSnapshotProof(opts *bind.TransactOpts, stateIndex uint8, statePayload []byte, srSignature []byte, snapProof [][32]byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "submitStateReportWithSnapshotProof", stateIndex, statePayload, srSignature, snapProof, attPayload, attSignature) } // SubmitStateReportWithSnapshotProof is a paid mutator transaction binding the contract method 0xbe7e63da. // // Solidity: function submitStateReportWithSnapshotProof(uint8 stateIndex, bytes statePayload, bytes srSignature, bytes32[] snapProof, bytes attPayload, bytes attSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxSession) SubmitStateReportWithSnapshotProof(stateIndex uint8, statePayload []byte, srSignature []byte, snapProof [][32]byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.SubmitStateReportWithSnapshotProof(&_IStatementInbox.TransactOpts, stateIndex, statePayload, srSignature, snapProof, attPayload, attSignature) } // SubmitStateReportWithSnapshotProof is a paid mutator transaction binding the contract method 0xbe7e63da. // // Solidity: function submitStateReportWithSnapshotProof(uint8 stateIndex, bytes statePayload, bytes srSignature, bytes32[] snapProof, bytes attPayload, bytes attSignature) returns(bool wasAccepted) func (_IStatementInbox *IStatementInboxTransactorSession) SubmitStateReportWithSnapshotProof(stateIndex uint8, statePayload []byte, srSignature []byte, snapProof [][32]byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.SubmitStateReportWithSnapshotProof(&_IStatementInbox.TransactOpts, stateIndex, statePayload, srSignature, snapProof, attPayload, attSignature) } // VerifyReceipt is a paid mutator transaction binding the contract method 0xc25aa585. // // Solidity: function verifyReceipt(bytes rcptPayload, bytes rcptSignature) returns(bool isValidReceipt) func (_IStatementInbox *IStatementInboxTransactor) VerifyReceipt(opts *bind.TransactOpts, rcptPayload []byte, rcptSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "verifyReceipt", rcptPayload, rcptSignature) } // VerifyReceipt is a paid mutator transaction binding the contract method 0xc25aa585. // // Solidity: function verifyReceipt(bytes rcptPayload, bytes rcptSignature) returns(bool isValidReceipt) func (_IStatementInbox *IStatementInboxSession) VerifyReceipt(rcptPayload []byte, rcptSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyReceipt(&_IStatementInbox.TransactOpts, rcptPayload, rcptSignature) } // VerifyReceipt is a paid mutator transaction binding the contract method 0xc25aa585. // // Solidity: function verifyReceipt(bytes rcptPayload, bytes rcptSignature) returns(bool isValidReceipt) func (_IStatementInbox *IStatementInboxTransactorSession) VerifyReceipt(rcptPayload []byte, rcptSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyReceipt(&_IStatementInbox.TransactOpts, rcptPayload, rcptSignature) } // VerifyReceiptReport is a paid mutator transaction binding the contract method 0x91af2e5d. // // Solidity: function verifyReceiptReport(bytes rcptPayload, bytes rrSignature) returns(bool isValidReport) func (_IStatementInbox *IStatementInboxTransactor) VerifyReceiptReport(opts *bind.TransactOpts, rcptPayload []byte, rrSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "verifyReceiptReport", rcptPayload, rrSignature) } // VerifyReceiptReport is a paid mutator transaction binding the contract method 0x91af2e5d. // // Solidity: function verifyReceiptReport(bytes rcptPayload, bytes rrSignature) returns(bool isValidReport) func (_IStatementInbox *IStatementInboxSession) VerifyReceiptReport(rcptPayload []byte, rrSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyReceiptReport(&_IStatementInbox.TransactOpts, rcptPayload, rrSignature) } // VerifyReceiptReport is a paid mutator transaction binding the contract method 0x91af2e5d. // // Solidity: function verifyReceiptReport(bytes rcptPayload, bytes rrSignature) returns(bool isValidReport) func (_IStatementInbox *IStatementInboxTransactorSession) VerifyReceiptReport(rcptPayload []byte, rrSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyReceiptReport(&_IStatementInbox.TransactOpts, rcptPayload, rrSignature) } // VerifyStateReport is a paid mutator transaction binding the contract method 0xdfe39675. // // Solidity: function verifyStateReport(bytes statePayload, bytes srSignature) returns(bool isValidReport) func (_IStatementInbox *IStatementInboxTransactor) VerifyStateReport(opts *bind.TransactOpts, statePayload []byte, srSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "verifyStateReport", statePayload, srSignature) } // VerifyStateReport is a paid mutator transaction binding the contract method 0xdfe39675. // // Solidity: function verifyStateReport(bytes statePayload, bytes srSignature) returns(bool isValidReport) func (_IStatementInbox *IStatementInboxSession) VerifyStateReport(statePayload []byte, srSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateReport(&_IStatementInbox.TransactOpts, statePayload, srSignature) } // VerifyStateReport is a paid mutator transaction binding the contract method 0xdfe39675. // // Solidity: function verifyStateReport(bytes statePayload, bytes srSignature) returns(bool isValidReport) func (_IStatementInbox *IStatementInboxTransactorSession) VerifyStateReport(statePayload []byte, srSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateReport(&_IStatementInbox.TransactOpts, statePayload, srSignature) } // VerifyStateWithAttestation is a paid mutator transaction binding the contract method 0x7d9978ae. // // Solidity: function verifyStateWithAttestation(uint8 stateIndex, bytes snapPayload, bytes attPayload, bytes attSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxTransactor) VerifyStateWithAttestation(opts *bind.TransactOpts, stateIndex uint8, snapPayload []byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "verifyStateWithAttestation", stateIndex, snapPayload, attPayload, attSignature) } // VerifyStateWithAttestation is a paid mutator transaction binding the contract method 0x7d9978ae. // // Solidity: function verifyStateWithAttestation(uint8 stateIndex, bytes snapPayload, bytes attPayload, bytes attSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxSession) VerifyStateWithAttestation(stateIndex uint8, snapPayload []byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateWithAttestation(&_IStatementInbox.TransactOpts, stateIndex, snapPayload, attPayload, attSignature) } // VerifyStateWithAttestation is a paid mutator transaction binding the contract method 0x7d9978ae. // // Solidity: function verifyStateWithAttestation(uint8 stateIndex, bytes snapPayload, bytes attPayload, bytes attSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxTransactorSession) VerifyStateWithAttestation(stateIndex uint8, snapPayload []byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateWithAttestation(&_IStatementInbox.TransactOpts, stateIndex, snapPayload, attPayload, attSignature) } // VerifyStateWithSnapshot is a paid mutator transaction binding the contract method 0x8671012e. // // Solidity: function verifyStateWithSnapshot(uint8 stateIndex, bytes snapPayload, bytes snapSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxTransactor) VerifyStateWithSnapshot(opts *bind.TransactOpts, stateIndex uint8, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "verifyStateWithSnapshot", stateIndex, snapPayload, snapSignature) } // VerifyStateWithSnapshot is a paid mutator transaction binding the contract method 0x8671012e. // // Solidity: function verifyStateWithSnapshot(uint8 stateIndex, bytes snapPayload, bytes snapSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxSession) VerifyStateWithSnapshot(stateIndex uint8, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateWithSnapshot(&_IStatementInbox.TransactOpts, stateIndex, snapPayload, snapSignature) } // VerifyStateWithSnapshot is a paid mutator transaction binding the contract method 0x8671012e. // // Solidity: function verifyStateWithSnapshot(uint8 stateIndex, bytes snapPayload, bytes snapSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxTransactorSession) VerifyStateWithSnapshot(stateIndex uint8, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateWithSnapshot(&_IStatementInbox.TransactOpts, stateIndex, snapPayload, snapSignature) } // VerifyStateWithSnapshotProof is a paid mutator transaction binding the contract method 0xe3097af8. // // Solidity: function verifyStateWithSnapshotProof(uint8 stateIndex, bytes statePayload, bytes32[] snapProof, bytes attPayload, bytes attSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxTransactor) VerifyStateWithSnapshotProof(opts *bind.TransactOpts, stateIndex uint8, statePayload []byte, snapProof [][32]byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.contract.Transact(opts, "verifyStateWithSnapshotProof", stateIndex, statePayload, snapProof, attPayload, attSignature) } // VerifyStateWithSnapshotProof is a paid mutator transaction binding the contract method 0xe3097af8. // // Solidity: function verifyStateWithSnapshotProof(uint8 stateIndex, bytes statePayload, bytes32[] snapProof, bytes attPayload, bytes attSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxSession) VerifyStateWithSnapshotProof(stateIndex uint8, statePayload []byte, snapProof [][32]byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateWithSnapshotProof(&_IStatementInbox.TransactOpts, stateIndex, statePayload, snapProof, attPayload, attSignature) } // VerifyStateWithSnapshotProof is a paid mutator transaction binding the contract method 0xe3097af8. // // Solidity: function verifyStateWithSnapshotProof(uint8 stateIndex, bytes statePayload, bytes32[] snapProof, bytes attPayload, bytes attSignature) returns(bool isValidState) func (_IStatementInbox *IStatementInboxTransactorSession) VerifyStateWithSnapshotProof(stateIndex uint8, statePayload []byte, snapProof [][32]byte, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _IStatementInbox.Contract.VerifyStateWithSnapshotProof(&_IStatementInbox.TransactOpts, stateIndex, statePayload, snapProof, attPayload, attSignature) } // InitializableMetaData contains all meta data concerning the Initializable contract. var InitializableMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"}]", } // InitializableABI is the input ABI used to generate the binding from. // Deprecated: Use InitializableMetaData.ABI instead. var InitializableABI = InitializableMetaData.ABI // Initializable is an auto generated Go binding around an Ethereum contract. type Initializable struct { InitializableCaller // Read-only binding to the contract InitializableTransactor // Write-only binding to the contract InitializableFilterer // Log filterer for contract events } // InitializableCaller is an auto generated read-only Go binding around an Ethereum contract. type InitializableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InitializableTransactor is an auto generated write-only Go binding around an Ethereum contract. type InitializableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InitializableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type InitializableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InitializableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type InitializableSession struct { Contract *Initializable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InitializableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type InitializableCallerSession struct { Contract *InitializableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // InitializableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type InitializableTransactorSession struct { Contract *InitializableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InitializableRaw is an auto generated low-level Go binding around an Ethereum contract. type InitializableRaw struct { Contract *Initializable // Generic contract binding to access the raw methods on } // InitializableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type InitializableCallerRaw struct { Contract *InitializableCaller // Generic read-only contract binding to access the raw methods on } // InitializableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type InitializableTransactorRaw struct { Contract *InitializableTransactor // Generic write-only contract binding to access the raw methods on } // NewInitializable creates a new instance of Initializable, bound to a specific deployed contract. func NewInitializable(address common.Address, backend bind.ContractBackend) (*Initializable, error) { contract, err := bindInitializable(address, backend, backend, backend) if err != nil { return nil, err } return &Initializable{InitializableCaller: InitializableCaller{contract: contract}, InitializableTransactor: InitializableTransactor{contract: contract}, InitializableFilterer: InitializableFilterer{contract: contract}}, nil } // NewInitializableCaller creates a new read-only instance of Initializable, bound to a specific deployed contract. func NewInitializableCaller(address common.Address, caller bind.ContractCaller) (*InitializableCaller, error) { contract, err := bindInitializable(address, caller, nil, nil) if err != nil { return nil, err } return &InitializableCaller{contract: contract}, nil } // NewInitializableTransactor creates a new write-only instance of Initializable, bound to a specific deployed contract. func NewInitializableTransactor(address common.Address, transactor bind.ContractTransactor) (*InitializableTransactor, error) { contract, err := bindInitializable(address, nil, transactor, nil) if err != nil { return nil, err } return &InitializableTransactor{contract: contract}, nil } // NewInitializableFilterer creates a new log filterer instance of Initializable, bound to a specific deployed contract. func NewInitializableFilterer(address common.Address, filterer bind.ContractFilterer) (*InitializableFilterer, error) { contract, err := bindInitializable(address, nil, nil, filterer) if err != nil { return nil, err } return &InitializableFilterer{contract: contract}, nil } // bindInitializable binds a generic wrapper to an already deployed contract. func bindInitializable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := InitializableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Initializable *InitializableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Initializable.Contract.InitializableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Initializable *InitializableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Initializable.Contract.InitializableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Initializable *InitializableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Initializable.Contract.InitializableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Initializable *InitializableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Initializable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Initializable *InitializableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Initializable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Initializable *InitializableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Initializable.Contract.contract.Transact(opts, method, params...) } // InitializableInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the Initializable contract. type InitializableInitializedIterator struct { Event *InitializableInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *InitializableInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(InitializableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(InitializableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *InitializableInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *InitializableInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // InitializableInitialized represents a Initialized event raised by the Initializable contract. type InitializableInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Initializable *InitializableFilterer) FilterInitialized(opts *bind.FilterOpts) (*InitializableInitializedIterator, error) { logs, sub, err := _Initializable.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &InitializableInitializedIterator{contract: _Initializable.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Initializable *InitializableFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *InitializableInitialized) (event.Subscription, error) { logs, sub, err := _Initializable.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(InitializableInitialized) if err := _Initializable.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Initializable *InitializableFilterer) ParseInitialized(log types.Log) (*InitializableInitialized, error) { event := new(InitializableInitialized) if err := _Initializable.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // InterfaceDestinationMetaData contains all meta data concerning the InterfaceDestination contract. var InterfaceDestinationMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"sigIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"},{\"internalType\":\"ChainGas[]\",\"name\":\"snapGas\",\"type\":\"uint128[]\"}],\"name\":\"acceptAttestation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"attestationsAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"destStatus\",\"outputs\":[{\"internalType\":\"uint40\",\"name\":\"snapRootTime\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"agentRootTime\",\"type\":\"uint40\"},{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getAttestation\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"}],\"name\":\"getGasData\",\"outputs\":[{\"internalType\":\"GasData\",\"name\":\"gasData\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"dataMaturity\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"notaryIndex\",\"type\":\"uint32\"}],\"name\":\"lastAttestationNonce\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextAgentRoot\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"passAgentRoot\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"rootPending\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "39fe2736": "acceptAttestation(uint32,uint256,bytes,bytes32,uint128[])", "3cf7b120": "attestationsAmount()", "40989152": "destStatus()", "29be4db2": "getAttestation(uint256)", "d0dd0675": "getGasData(uint32)", "305b29ee": "lastAttestationNonce(uint32)", "55252dd1": "nextAgentRoot()", "a554d1e3": "passAgentRoot()", }, } // InterfaceDestinationABI is the input ABI used to generate the binding from. // Deprecated: Use InterfaceDestinationMetaData.ABI instead. var InterfaceDestinationABI = InterfaceDestinationMetaData.ABI // Deprecated: Use InterfaceDestinationMetaData.Sigs instead. // InterfaceDestinationFuncSigs maps the 4-byte function signature to its string representation. var InterfaceDestinationFuncSigs = InterfaceDestinationMetaData.Sigs // InterfaceDestination is an auto generated Go binding around an Ethereum contract. type InterfaceDestination struct { InterfaceDestinationCaller // Read-only binding to the contract InterfaceDestinationTransactor // Write-only binding to the contract InterfaceDestinationFilterer // Log filterer for contract events } // InterfaceDestinationCaller is an auto generated read-only Go binding around an Ethereum contract. type InterfaceDestinationCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceDestinationTransactor is an auto generated write-only Go binding around an Ethereum contract. type InterfaceDestinationTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceDestinationFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type InterfaceDestinationFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceDestinationSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type InterfaceDestinationSession struct { Contract *InterfaceDestination // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InterfaceDestinationCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type InterfaceDestinationCallerSession struct { Contract *InterfaceDestinationCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // InterfaceDestinationTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type InterfaceDestinationTransactorSession struct { Contract *InterfaceDestinationTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InterfaceDestinationRaw is an auto generated low-level Go binding around an Ethereum contract. type InterfaceDestinationRaw struct { Contract *InterfaceDestination // Generic contract binding to access the raw methods on } // InterfaceDestinationCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type InterfaceDestinationCallerRaw struct { Contract *InterfaceDestinationCaller // Generic read-only contract binding to access the raw methods on } // InterfaceDestinationTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type InterfaceDestinationTransactorRaw struct { Contract *InterfaceDestinationTransactor // Generic write-only contract binding to access the raw methods on } // NewInterfaceDestination creates a new instance of InterfaceDestination, bound to a specific deployed contract. func NewInterfaceDestination(address common.Address, backend bind.ContractBackend) (*InterfaceDestination, error) { contract, err := bindInterfaceDestination(address, backend, backend, backend) if err != nil { return nil, err } return &InterfaceDestination{InterfaceDestinationCaller: InterfaceDestinationCaller{contract: contract}, InterfaceDestinationTransactor: InterfaceDestinationTransactor{contract: contract}, InterfaceDestinationFilterer: InterfaceDestinationFilterer{contract: contract}}, nil } // NewInterfaceDestinationCaller creates a new read-only instance of InterfaceDestination, bound to a specific deployed contract. func NewInterfaceDestinationCaller(address common.Address, caller bind.ContractCaller) (*InterfaceDestinationCaller, error) { contract, err := bindInterfaceDestination(address, caller, nil, nil) if err != nil { return nil, err } return &InterfaceDestinationCaller{contract: contract}, nil } // NewInterfaceDestinationTransactor creates a new write-only instance of InterfaceDestination, bound to a specific deployed contract. func NewInterfaceDestinationTransactor(address common.Address, transactor bind.ContractTransactor) (*InterfaceDestinationTransactor, error) { contract, err := bindInterfaceDestination(address, nil, transactor, nil) if err != nil { return nil, err } return &InterfaceDestinationTransactor{contract: contract}, nil } // NewInterfaceDestinationFilterer creates a new log filterer instance of InterfaceDestination, bound to a specific deployed contract. func NewInterfaceDestinationFilterer(address common.Address, filterer bind.ContractFilterer) (*InterfaceDestinationFilterer, error) { contract, err := bindInterfaceDestination(address, nil, nil, filterer) if err != nil { return nil, err } return &InterfaceDestinationFilterer{contract: contract}, nil } // bindInterfaceDestination binds a generic wrapper to an already deployed contract. func bindInterfaceDestination(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := InterfaceDestinationMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_InterfaceDestination *InterfaceDestinationRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _InterfaceDestination.Contract.InterfaceDestinationCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_InterfaceDestination *InterfaceDestinationRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceDestination.Contract.InterfaceDestinationTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_InterfaceDestination *InterfaceDestinationRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _InterfaceDestination.Contract.InterfaceDestinationTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_InterfaceDestination *InterfaceDestinationCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _InterfaceDestination.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_InterfaceDestination *InterfaceDestinationTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceDestination.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_InterfaceDestination *InterfaceDestinationTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _InterfaceDestination.Contract.contract.Transact(opts, method, params...) } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_InterfaceDestination *InterfaceDestinationCaller) AttestationsAmount(opts *bind.CallOpts) (*big.Int, error) { var out []interface{} err := _InterfaceDestination.contract.Call(opts, &out, "attestationsAmount") if err != nil { return *new(*big.Int), err } out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) return out0, err } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_InterfaceDestination *InterfaceDestinationSession) AttestationsAmount() (*big.Int, error) { return _InterfaceDestination.Contract.AttestationsAmount(&_InterfaceDestination.CallOpts) } // AttestationsAmount is a free data retrieval call binding the contract method 0x3cf7b120. // // Solidity: function attestationsAmount() view returns(uint256) func (_InterfaceDestination *InterfaceDestinationCallerSession) AttestationsAmount() (*big.Int, error) { return _InterfaceDestination.Contract.AttestationsAmount(&_InterfaceDestination.CallOpts) } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_InterfaceDestination *InterfaceDestinationCaller) DestStatus(opts *bind.CallOpts) (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { var out []interface{} err := _InterfaceDestination.contract.Call(opts, &out, "destStatus") outstruct := new(struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }) if err != nil { return *outstruct, err } outstruct.SnapRootTime = *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) outstruct.AgentRootTime = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) outstruct.NotaryIndex = *abi.ConvertType(out[2], new(uint32)).(*uint32) return *outstruct, err } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_InterfaceDestination *InterfaceDestinationSession) DestStatus() (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { return _InterfaceDestination.Contract.DestStatus(&_InterfaceDestination.CallOpts) } // DestStatus is a free data retrieval call binding the contract method 0x40989152. // // Solidity: function destStatus() view returns(uint40 snapRootTime, uint40 agentRootTime, uint32 notaryIndex) func (_InterfaceDestination *InterfaceDestinationCallerSession) DestStatus() (struct { SnapRootTime *big.Int AgentRootTime *big.Int NotaryIndex uint32 }, error) { return _InterfaceDestination.Contract.DestStatus(&_InterfaceDestination.CallOpts) } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_InterfaceDestination *InterfaceDestinationCaller) GetAttestation(opts *bind.CallOpts, index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { var out []interface{} err := _InterfaceDestination.contract.Call(opts, &out, "getAttestation", index) outstruct := new(struct { AttPayload []byte AttSignature []byte }) if err != nil { return *outstruct, err } outstruct.AttPayload = *abi.ConvertType(out[0], new([]byte)).(*[]byte) outstruct.AttSignature = *abi.ConvertType(out[1], new([]byte)).(*[]byte) return *outstruct, err } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_InterfaceDestination *InterfaceDestinationSession) GetAttestation(index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { return _InterfaceDestination.Contract.GetAttestation(&_InterfaceDestination.CallOpts, index) } // GetAttestation is a free data retrieval call binding the contract method 0x29be4db2. // // Solidity: function getAttestation(uint256 index) view returns(bytes attPayload, bytes attSignature) func (_InterfaceDestination *InterfaceDestinationCallerSession) GetAttestation(index *big.Int) (struct { AttPayload []byte AttSignature []byte }, error) { return _InterfaceDestination.Contract.GetAttestation(&_InterfaceDestination.CallOpts, index) } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_InterfaceDestination *InterfaceDestinationCaller) GetGasData(opts *bind.CallOpts, domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { var out []interface{} err := _InterfaceDestination.contract.Call(opts, &out, "getGasData", domain) outstruct := new(struct { GasData *big.Int DataMaturity *big.Int }) if err != nil { return *outstruct, err } outstruct.GasData = *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) outstruct.DataMaturity = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) return *outstruct, err } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_InterfaceDestination *InterfaceDestinationSession) GetGasData(domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { return _InterfaceDestination.Contract.GetGasData(&_InterfaceDestination.CallOpts, domain) } // GetGasData is a free data retrieval call binding the contract method 0xd0dd0675. // // Solidity: function getGasData(uint32 domain) view returns(uint96 gasData, uint256 dataMaturity) func (_InterfaceDestination *InterfaceDestinationCallerSession) GetGasData(domain uint32) (struct { GasData *big.Int DataMaturity *big.Int }, error) { return _InterfaceDestination.Contract.GetGasData(&_InterfaceDestination.CallOpts, domain) } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 notaryIndex) view returns(uint32) func (_InterfaceDestination *InterfaceDestinationCaller) LastAttestationNonce(opts *bind.CallOpts, notaryIndex uint32) (uint32, error) { var out []interface{} err := _InterfaceDestination.contract.Call(opts, &out, "lastAttestationNonce", notaryIndex) if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 notaryIndex) view returns(uint32) func (_InterfaceDestination *InterfaceDestinationSession) LastAttestationNonce(notaryIndex uint32) (uint32, error) { return _InterfaceDestination.Contract.LastAttestationNonce(&_InterfaceDestination.CallOpts, notaryIndex) } // LastAttestationNonce is a free data retrieval call binding the contract method 0x305b29ee. // // Solidity: function lastAttestationNonce(uint32 notaryIndex) view returns(uint32) func (_InterfaceDestination *InterfaceDestinationCallerSession) LastAttestationNonce(notaryIndex uint32) (uint32, error) { return _InterfaceDestination.Contract.LastAttestationNonce(&_InterfaceDestination.CallOpts, notaryIndex) } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_InterfaceDestination *InterfaceDestinationCaller) NextAgentRoot(opts *bind.CallOpts) ([32]byte, error) { var out []interface{} err := _InterfaceDestination.contract.Call(opts, &out, "nextAgentRoot") if err != nil { return *new([32]byte), err } out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) return out0, err } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_InterfaceDestination *InterfaceDestinationSession) NextAgentRoot() ([32]byte, error) { return _InterfaceDestination.Contract.NextAgentRoot(&_InterfaceDestination.CallOpts) } // NextAgentRoot is a free data retrieval call binding the contract method 0x55252dd1. // // Solidity: function nextAgentRoot() view returns(bytes32) func (_InterfaceDestination *InterfaceDestinationCallerSession) NextAgentRoot() ([32]byte, error) { return _InterfaceDestination.Contract.NextAgentRoot(&_InterfaceDestination.CallOpts) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_InterfaceDestination *InterfaceDestinationTransactor) AcceptAttestation(opts *bind.TransactOpts, notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _InterfaceDestination.contract.Transact(opts, "acceptAttestation", notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_InterfaceDestination *InterfaceDestinationSession) AcceptAttestation(notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _InterfaceDestination.Contract.AcceptAttestation(&_InterfaceDestination.TransactOpts, notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // AcceptAttestation is a paid mutator transaction binding the contract method 0x39fe2736. // // Solidity: function acceptAttestation(uint32 notaryIndex, uint256 sigIndex, bytes attPayload, bytes32 agentRoot, uint128[] snapGas) returns(bool wasAccepted) func (_InterfaceDestination *InterfaceDestinationTransactorSession) AcceptAttestation(notaryIndex uint32, sigIndex *big.Int, attPayload []byte, agentRoot [32]byte, snapGas []*big.Int) (*types.Transaction, error) { return _InterfaceDestination.Contract.AcceptAttestation(&_InterfaceDestination.TransactOpts, notaryIndex, sigIndex, attPayload, agentRoot, snapGas) } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_InterfaceDestination *InterfaceDestinationTransactor) PassAgentRoot(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceDestination.contract.Transact(opts, "passAgentRoot") } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_InterfaceDestination *InterfaceDestinationSession) PassAgentRoot() (*types.Transaction, error) { return _InterfaceDestination.Contract.PassAgentRoot(&_InterfaceDestination.TransactOpts) } // PassAgentRoot is a paid mutator transaction binding the contract method 0xa554d1e3. // // Solidity: function passAgentRoot() returns(bool rootPending) func (_InterfaceDestination *InterfaceDestinationTransactorSession) PassAgentRoot() (*types.Transaction, error) { return _InterfaceDestination.Contract.PassAgentRoot(&_InterfaceDestination.TransactOpts) } // InterfaceInboxMetaData contains all meta data concerning the InterfaceInbox contract. var InterfaceInboxMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"attNotaryIndex\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"attNonce\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"paddedTips\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"}],\"name\":\"passReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rcptSignature\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"paddedTips\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"headerHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"bodyHash\",\"type\":\"bytes32\"}],\"name\":\"submitReceipt\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rcptPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rcptSignature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rrSignature\",\"type\":\"bytes\"}],\"name\":\"submitReceiptReport\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"wasAccepted\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"snapPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"snapSignature\",\"type\":\"bytes\"}],\"name\":\"submitSnapshot\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"agentRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"snapGas\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attSignature\",\"type\":\"bytes\"}],\"name\":\"verifyAttestation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidAttestation\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"attPayload\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"arSignature\",\"type\":\"bytes\"}],\"name\":\"verifyAttestationReport\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isValidReport\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "6b47b3bc": "passReceipt(uint32,uint32,uint256,bytes)", "b2a4b455": "submitReceipt(bytes,bytes,uint256,bytes32,bytes32)", "89246503": "submitReceiptReport(bytes,bytes,bytes)", "4bb73ea5": "submitSnapshot(bytes,bytes)", "0ca77473": "verifyAttestation(bytes,bytes)", "31e8df5a": "verifyAttestationReport(bytes,bytes)", }, } // InterfaceInboxABI is the input ABI used to generate the binding from. // Deprecated: Use InterfaceInboxMetaData.ABI instead. var InterfaceInboxABI = InterfaceInboxMetaData.ABI // Deprecated: Use InterfaceInboxMetaData.Sigs instead. // InterfaceInboxFuncSigs maps the 4-byte function signature to its string representation. var InterfaceInboxFuncSigs = InterfaceInboxMetaData.Sigs // InterfaceInbox is an auto generated Go binding around an Ethereum contract. type InterfaceInbox struct { InterfaceInboxCaller // Read-only binding to the contract InterfaceInboxTransactor // Write-only binding to the contract InterfaceInboxFilterer // Log filterer for contract events } // InterfaceInboxCaller is an auto generated read-only Go binding around an Ethereum contract. type InterfaceInboxCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceInboxTransactor is an auto generated write-only Go binding around an Ethereum contract. type InterfaceInboxTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceInboxFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type InterfaceInboxFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceInboxSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type InterfaceInboxSession struct { Contract *InterfaceInbox // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InterfaceInboxCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type InterfaceInboxCallerSession struct { Contract *InterfaceInboxCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // InterfaceInboxTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type InterfaceInboxTransactorSession struct { Contract *InterfaceInboxTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InterfaceInboxRaw is an auto generated low-level Go binding around an Ethereum contract. type InterfaceInboxRaw struct { Contract *InterfaceInbox // Generic contract binding to access the raw methods on } // InterfaceInboxCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type InterfaceInboxCallerRaw struct { Contract *InterfaceInboxCaller // Generic read-only contract binding to access the raw methods on } // InterfaceInboxTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type InterfaceInboxTransactorRaw struct { Contract *InterfaceInboxTransactor // Generic write-only contract binding to access the raw methods on } // NewInterfaceInbox creates a new instance of InterfaceInbox, bound to a specific deployed contract. func NewInterfaceInbox(address common.Address, backend bind.ContractBackend) (*InterfaceInbox, error) { contract, err := bindInterfaceInbox(address, backend, backend, backend) if err != nil { return nil, err } return &InterfaceInbox{InterfaceInboxCaller: InterfaceInboxCaller{contract: contract}, InterfaceInboxTransactor: InterfaceInboxTransactor{contract: contract}, InterfaceInboxFilterer: InterfaceInboxFilterer{contract: contract}}, nil } // NewInterfaceInboxCaller creates a new read-only instance of InterfaceInbox, bound to a specific deployed contract. func NewInterfaceInboxCaller(address common.Address, caller bind.ContractCaller) (*InterfaceInboxCaller, error) { contract, err := bindInterfaceInbox(address, caller, nil, nil) if err != nil { return nil, err } return &InterfaceInboxCaller{contract: contract}, nil } // NewInterfaceInboxTransactor creates a new write-only instance of InterfaceInbox, bound to a specific deployed contract. func NewInterfaceInboxTransactor(address common.Address, transactor bind.ContractTransactor) (*InterfaceInboxTransactor, error) { contract, err := bindInterfaceInbox(address, nil, transactor, nil) if err != nil { return nil, err } return &InterfaceInboxTransactor{contract: contract}, nil } // NewInterfaceInboxFilterer creates a new log filterer instance of InterfaceInbox, bound to a specific deployed contract. func NewInterfaceInboxFilterer(address common.Address, filterer bind.ContractFilterer) (*InterfaceInboxFilterer, error) { contract, err := bindInterfaceInbox(address, nil, nil, filterer) if err != nil { return nil, err } return &InterfaceInboxFilterer{contract: contract}, nil } // bindInterfaceInbox binds a generic wrapper to an already deployed contract. func bindInterfaceInbox(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := InterfaceInboxMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_InterfaceInbox *InterfaceInboxRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _InterfaceInbox.Contract.InterfaceInboxCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_InterfaceInbox *InterfaceInboxRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceInbox.Contract.InterfaceInboxTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_InterfaceInbox *InterfaceInboxRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _InterfaceInbox.Contract.InterfaceInboxTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_InterfaceInbox *InterfaceInboxCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _InterfaceInbox.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_InterfaceInbox *InterfaceInboxTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceInbox.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_InterfaceInbox *InterfaceInboxTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _InterfaceInbox.Contract.contract.Transact(opts, method, params...) } // PassReceipt is a paid mutator transaction binding the contract method 0x6b47b3bc. // // Solidity: function passReceipt(uint32 attNotaryIndex, uint32 attNonce, uint256 paddedTips, bytes rcptPayload) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxTransactor) PassReceipt(opts *bind.TransactOpts, attNotaryIndex uint32, attNonce uint32, paddedTips *big.Int, rcptPayload []byte) (*types.Transaction, error) { return _InterfaceInbox.contract.Transact(opts, "passReceipt", attNotaryIndex, attNonce, paddedTips, rcptPayload) } // PassReceipt is a paid mutator transaction binding the contract method 0x6b47b3bc. // // Solidity: function passReceipt(uint32 attNotaryIndex, uint32 attNonce, uint256 paddedTips, bytes rcptPayload) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxSession) PassReceipt(attNotaryIndex uint32, attNonce uint32, paddedTips *big.Int, rcptPayload []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.PassReceipt(&_InterfaceInbox.TransactOpts, attNotaryIndex, attNonce, paddedTips, rcptPayload) } // PassReceipt is a paid mutator transaction binding the contract method 0x6b47b3bc. // // Solidity: function passReceipt(uint32 attNotaryIndex, uint32 attNonce, uint256 paddedTips, bytes rcptPayload) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxTransactorSession) PassReceipt(attNotaryIndex uint32, attNonce uint32, paddedTips *big.Int, rcptPayload []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.PassReceipt(&_InterfaceInbox.TransactOpts, attNotaryIndex, attNonce, paddedTips, rcptPayload) } // SubmitReceipt is a paid mutator transaction binding the contract method 0xb2a4b455. // // Solidity: function submitReceipt(bytes rcptPayload, bytes rcptSignature, uint256 paddedTips, bytes32 headerHash, bytes32 bodyHash) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxTransactor) SubmitReceipt(opts *bind.TransactOpts, rcptPayload []byte, rcptSignature []byte, paddedTips *big.Int, headerHash [32]byte, bodyHash [32]byte) (*types.Transaction, error) { return _InterfaceInbox.contract.Transact(opts, "submitReceipt", rcptPayload, rcptSignature, paddedTips, headerHash, bodyHash) } // SubmitReceipt is a paid mutator transaction binding the contract method 0xb2a4b455. // // Solidity: function submitReceipt(bytes rcptPayload, bytes rcptSignature, uint256 paddedTips, bytes32 headerHash, bytes32 bodyHash) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxSession) SubmitReceipt(rcptPayload []byte, rcptSignature []byte, paddedTips *big.Int, headerHash [32]byte, bodyHash [32]byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.SubmitReceipt(&_InterfaceInbox.TransactOpts, rcptPayload, rcptSignature, paddedTips, headerHash, bodyHash) } // SubmitReceipt is a paid mutator transaction binding the contract method 0xb2a4b455. // // Solidity: function submitReceipt(bytes rcptPayload, bytes rcptSignature, uint256 paddedTips, bytes32 headerHash, bytes32 bodyHash) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxTransactorSession) SubmitReceipt(rcptPayload []byte, rcptSignature []byte, paddedTips *big.Int, headerHash [32]byte, bodyHash [32]byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.SubmitReceipt(&_InterfaceInbox.TransactOpts, rcptPayload, rcptSignature, paddedTips, headerHash, bodyHash) } // SubmitReceiptReport is a paid mutator transaction binding the contract method 0x89246503. // // Solidity: function submitReceiptReport(bytes rcptPayload, bytes rcptSignature, bytes rrSignature) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxTransactor) SubmitReceiptReport(opts *bind.TransactOpts, rcptPayload []byte, rcptSignature []byte, rrSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.contract.Transact(opts, "submitReceiptReport", rcptPayload, rcptSignature, rrSignature) } // SubmitReceiptReport is a paid mutator transaction binding the contract method 0x89246503. // // Solidity: function submitReceiptReport(bytes rcptPayload, bytes rcptSignature, bytes rrSignature) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxSession) SubmitReceiptReport(rcptPayload []byte, rcptSignature []byte, rrSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.SubmitReceiptReport(&_InterfaceInbox.TransactOpts, rcptPayload, rcptSignature, rrSignature) } // SubmitReceiptReport is a paid mutator transaction binding the contract method 0x89246503. // // Solidity: function submitReceiptReport(bytes rcptPayload, bytes rcptSignature, bytes rrSignature) returns(bool wasAccepted) func (_InterfaceInbox *InterfaceInboxTransactorSession) SubmitReceiptReport(rcptPayload []byte, rcptSignature []byte, rrSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.SubmitReceiptReport(&_InterfaceInbox.TransactOpts, rcptPayload, rcptSignature, rrSignature) } // SubmitSnapshot is a paid mutator transaction binding the contract method 0x4bb73ea5. // // Solidity: function submitSnapshot(bytes snapPayload, bytes snapSignature) returns(bytes attPayload, bytes32 agentRoot, uint256[] snapGas) func (_InterfaceInbox *InterfaceInboxTransactor) SubmitSnapshot(opts *bind.TransactOpts, snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.contract.Transact(opts, "submitSnapshot", snapPayload, snapSignature) } // SubmitSnapshot is a paid mutator transaction binding the contract method 0x4bb73ea5. // // Solidity: function submitSnapshot(bytes snapPayload, bytes snapSignature) returns(bytes attPayload, bytes32 agentRoot, uint256[] snapGas) func (_InterfaceInbox *InterfaceInboxSession) SubmitSnapshot(snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.SubmitSnapshot(&_InterfaceInbox.TransactOpts, snapPayload, snapSignature) } // SubmitSnapshot is a paid mutator transaction binding the contract method 0x4bb73ea5. // // Solidity: function submitSnapshot(bytes snapPayload, bytes snapSignature) returns(bytes attPayload, bytes32 agentRoot, uint256[] snapGas) func (_InterfaceInbox *InterfaceInboxTransactorSession) SubmitSnapshot(snapPayload []byte, snapSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.SubmitSnapshot(&_InterfaceInbox.TransactOpts, snapPayload, snapSignature) } // VerifyAttestation is a paid mutator transaction binding the contract method 0x0ca77473. // // Solidity: function verifyAttestation(bytes attPayload, bytes attSignature) returns(bool isValidAttestation) func (_InterfaceInbox *InterfaceInboxTransactor) VerifyAttestation(opts *bind.TransactOpts, attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.contract.Transact(opts, "verifyAttestation", attPayload, attSignature) } // VerifyAttestation is a paid mutator transaction binding the contract method 0x0ca77473. // // Solidity: function verifyAttestation(bytes attPayload, bytes attSignature) returns(bool isValidAttestation) func (_InterfaceInbox *InterfaceInboxSession) VerifyAttestation(attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.VerifyAttestation(&_InterfaceInbox.TransactOpts, attPayload, attSignature) } // VerifyAttestation is a paid mutator transaction binding the contract method 0x0ca77473. // // Solidity: function verifyAttestation(bytes attPayload, bytes attSignature) returns(bool isValidAttestation) func (_InterfaceInbox *InterfaceInboxTransactorSession) VerifyAttestation(attPayload []byte, attSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.VerifyAttestation(&_InterfaceInbox.TransactOpts, attPayload, attSignature) } // VerifyAttestationReport is a paid mutator transaction binding the contract method 0x31e8df5a. // // Solidity: function verifyAttestationReport(bytes attPayload, bytes arSignature) returns(bool isValidReport) func (_InterfaceInbox *InterfaceInboxTransactor) VerifyAttestationReport(opts *bind.TransactOpts, attPayload []byte, arSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.contract.Transact(opts, "verifyAttestationReport", attPayload, arSignature) } // VerifyAttestationReport is a paid mutator transaction binding the contract method 0x31e8df5a. // // Solidity: function verifyAttestationReport(bytes attPayload, bytes arSignature) returns(bool isValidReport) func (_InterfaceInbox *InterfaceInboxSession) VerifyAttestationReport(attPayload []byte, arSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.VerifyAttestationReport(&_InterfaceInbox.TransactOpts, attPayload, arSignature) } // VerifyAttestationReport is a paid mutator transaction binding the contract method 0x31e8df5a. // // Solidity: function verifyAttestationReport(bytes attPayload, bytes arSignature) returns(bool isValidReport) func (_InterfaceInbox *InterfaceInboxTransactorSession) VerifyAttestationReport(attPayload []byte, arSignature []byte) (*types.Transaction, error) { return _InterfaceInbox.Contract.VerifyAttestationReport(&_InterfaceInbox.TransactOpts, attPayload, arSignature) } // InterfaceLightManagerMetaData contains all meta data concerning the InterfaceLightManager contract. var InterfaceLightManagerMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"cancelProposedAgentRoot\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agentRoot_\",\"type\":\"bytes32\"}],\"name\":\"proposeAgentRootWhenStuck\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposedAgentRootData\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"agentRoot_\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"proposedAt_\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"msgOrigin\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"proofMaturity\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"remoteWithdrawTips\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"magicValue\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resolveProposedAgentRoot\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agentRoot_\",\"type\":\"bytes32\"}],\"name\":\"setAgentRoot\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"agent\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"enumAgentFlag\",\"name\":\"flag\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"domain\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"internalType\":\"structAgentStatus\",\"name\":\"status\",\"type\":\"tuple\"},{\"internalType\":\"bytes32[]\",\"name\":\"proof\",\"type\":\"bytes32[]\"}],\"name\":\"updateAgentStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "91ea3c34": "cancelProposedAgentRoot()", "dbad9562": "proposeAgentRootWhenStuck(bytes32)", "5396feef": "proposedAgentRootData()", "1fa07138": "remoteWithdrawTips(uint32,uint256,address,uint256)", "38416281": "resolveProposedAgentRoot()", "58668176": "setAgentRoot(bytes32)", "cbd05965": "updateAgentStatus(address,(uint8,uint32,uint32),bytes32[])", }, } // InterfaceLightManagerABI is the input ABI used to generate the binding from. // Deprecated: Use InterfaceLightManagerMetaData.ABI instead. var InterfaceLightManagerABI = InterfaceLightManagerMetaData.ABI // Deprecated: Use InterfaceLightManagerMetaData.Sigs instead. // InterfaceLightManagerFuncSigs maps the 4-byte function signature to its string representation. var InterfaceLightManagerFuncSigs = InterfaceLightManagerMetaData.Sigs // InterfaceLightManager is an auto generated Go binding around an Ethereum contract. type InterfaceLightManager struct { InterfaceLightManagerCaller // Read-only binding to the contract InterfaceLightManagerTransactor // Write-only binding to the contract InterfaceLightManagerFilterer // Log filterer for contract events } // InterfaceLightManagerCaller is an auto generated read-only Go binding around an Ethereum contract. type InterfaceLightManagerCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceLightManagerTransactor is an auto generated write-only Go binding around an Ethereum contract. type InterfaceLightManagerTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceLightManagerFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type InterfaceLightManagerFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // InterfaceLightManagerSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type InterfaceLightManagerSession struct { Contract *InterfaceLightManager // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InterfaceLightManagerCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type InterfaceLightManagerCallerSession struct { Contract *InterfaceLightManagerCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // InterfaceLightManagerTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type InterfaceLightManagerTransactorSession struct { Contract *InterfaceLightManagerTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // InterfaceLightManagerRaw is an auto generated low-level Go binding around an Ethereum contract. type InterfaceLightManagerRaw struct { Contract *InterfaceLightManager // Generic contract binding to access the raw methods on } // InterfaceLightManagerCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type InterfaceLightManagerCallerRaw struct { Contract *InterfaceLightManagerCaller // Generic read-only contract binding to access the raw methods on } // InterfaceLightManagerTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type InterfaceLightManagerTransactorRaw struct { Contract *InterfaceLightManagerTransactor // Generic write-only contract binding to access the raw methods on } // NewInterfaceLightManager creates a new instance of InterfaceLightManager, bound to a specific deployed contract. func NewInterfaceLightManager(address common.Address, backend bind.ContractBackend) (*InterfaceLightManager, error) { contract, err := bindInterfaceLightManager(address, backend, backend, backend) if err != nil { return nil, err } return &InterfaceLightManager{InterfaceLightManagerCaller: InterfaceLightManagerCaller{contract: contract}, InterfaceLightManagerTransactor: InterfaceLightManagerTransactor{contract: contract}, InterfaceLightManagerFilterer: InterfaceLightManagerFilterer{contract: contract}}, nil } // NewInterfaceLightManagerCaller creates a new read-only instance of InterfaceLightManager, bound to a specific deployed contract. func NewInterfaceLightManagerCaller(address common.Address, caller bind.ContractCaller) (*InterfaceLightManagerCaller, error) { contract, err := bindInterfaceLightManager(address, caller, nil, nil) if err != nil { return nil, err } return &InterfaceLightManagerCaller{contract: contract}, nil } // NewInterfaceLightManagerTransactor creates a new write-only instance of InterfaceLightManager, bound to a specific deployed contract. func NewInterfaceLightManagerTransactor(address common.Address, transactor bind.ContractTransactor) (*InterfaceLightManagerTransactor, error) { contract, err := bindInterfaceLightManager(address, nil, transactor, nil) if err != nil { return nil, err } return &InterfaceLightManagerTransactor{contract: contract}, nil } // NewInterfaceLightManagerFilterer creates a new log filterer instance of InterfaceLightManager, bound to a specific deployed contract. func NewInterfaceLightManagerFilterer(address common.Address, filterer bind.ContractFilterer) (*InterfaceLightManagerFilterer, error) { contract, err := bindInterfaceLightManager(address, nil, nil, filterer) if err != nil { return nil, err } return &InterfaceLightManagerFilterer{contract: contract}, nil } // bindInterfaceLightManager binds a generic wrapper to an already deployed contract. func bindInterfaceLightManager(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := InterfaceLightManagerMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_InterfaceLightManager *InterfaceLightManagerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _InterfaceLightManager.Contract.InterfaceLightManagerCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_InterfaceLightManager *InterfaceLightManagerRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceLightManager.Contract.InterfaceLightManagerTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_InterfaceLightManager *InterfaceLightManagerRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _InterfaceLightManager.Contract.InterfaceLightManagerTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_InterfaceLightManager *InterfaceLightManagerCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _InterfaceLightManager.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_InterfaceLightManager *InterfaceLightManagerTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceLightManager.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_InterfaceLightManager *InterfaceLightManagerTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _InterfaceLightManager.Contract.contract.Transact(opts, method, params...) } // ProposedAgentRootData is a free data retrieval call binding the contract method 0x5396feef. // // Solidity: function proposedAgentRootData() view returns(bytes32 agentRoot_, uint256 proposedAt_) func (_InterfaceLightManager *InterfaceLightManagerCaller) ProposedAgentRootData(opts *bind.CallOpts) (struct { AgentRoot [32]byte ProposedAt *big.Int }, error) { var out []interface{} err := _InterfaceLightManager.contract.Call(opts, &out, "proposedAgentRootData") outstruct := new(struct { AgentRoot [32]byte ProposedAt *big.Int }) if err != nil { return *outstruct, err } outstruct.AgentRoot = *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) outstruct.ProposedAt = *abi.ConvertType(out[1], new(*big.Int)).(**big.Int) return *outstruct, err } // ProposedAgentRootData is a free data retrieval call binding the contract method 0x5396feef. // // Solidity: function proposedAgentRootData() view returns(bytes32 agentRoot_, uint256 proposedAt_) func (_InterfaceLightManager *InterfaceLightManagerSession) ProposedAgentRootData() (struct { AgentRoot [32]byte ProposedAt *big.Int }, error) { return _InterfaceLightManager.Contract.ProposedAgentRootData(&_InterfaceLightManager.CallOpts) } // ProposedAgentRootData is a free data retrieval call binding the contract method 0x5396feef. // // Solidity: function proposedAgentRootData() view returns(bytes32 agentRoot_, uint256 proposedAt_) func (_InterfaceLightManager *InterfaceLightManagerCallerSession) ProposedAgentRootData() (struct { AgentRoot [32]byte ProposedAt *big.Int }, error) { return _InterfaceLightManager.Contract.ProposedAgentRootData(&_InterfaceLightManager.CallOpts) } // CancelProposedAgentRoot is a paid mutator transaction binding the contract method 0x91ea3c34. // // Solidity: function cancelProposedAgentRoot() returns() func (_InterfaceLightManager *InterfaceLightManagerTransactor) CancelProposedAgentRoot(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceLightManager.contract.Transact(opts, "cancelProposedAgentRoot") } // CancelProposedAgentRoot is a paid mutator transaction binding the contract method 0x91ea3c34. // // Solidity: function cancelProposedAgentRoot() returns() func (_InterfaceLightManager *InterfaceLightManagerSession) CancelProposedAgentRoot() (*types.Transaction, error) { return _InterfaceLightManager.Contract.CancelProposedAgentRoot(&_InterfaceLightManager.TransactOpts) } // CancelProposedAgentRoot is a paid mutator transaction binding the contract method 0x91ea3c34. // // Solidity: function cancelProposedAgentRoot() returns() func (_InterfaceLightManager *InterfaceLightManagerTransactorSession) CancelProposedAgentRoot() (*types.Transaction, error) { return _InterfaceLightManager.Contract.CancelProposedAgentRoot(&_InterfaceLightManager.TransactOpts) } // ProposeAgentRootWhenStuck is a paid mutator transaction binding the contract method 0xdbad9562. // // Solidity: function proposeAgentRootWhenStuck(bytes32 agentRoot_) returns() func (_InterfaceLightManager *InterfaceLightManagerTransactor) ProposeAgentRootWhenStuck(opts *bind.TransactOpts, agentRoot_ [32]byte) (*types.Transaction, error) { return _InterfaceLightManager.contract.Transact(opts, "proposeAgentRootWhenStuck", agentRoot_) } // ProposeAgentRootWhenStuck is a paid mutator transaction binding the contract method 0xdbad9562. // // Solidity: function proposeAgentRootWhenStuck(bytes32 agentRoot_) returns() func (_InterfaceLightManager *InterfaceLightManagerSession) ProposeAgentRootWhenStuck(agentRoot_ [32]byte) (*types.Transaction, error) { return _InterfaceLightManager.Contract.ProposeAgentRootWhenStuck(&_InterfaceLightManager.TransactOpts, agentRoot_) } // ProposeAgentRootWhenStuck is a paid mutator transaction binding the contract method 0xdbad9562. // // Solidity: function proposeAgentRootWhenStuck(bytes32 agentRoot_) returns() func (_InterfaceLightManager *InterfaceLightManagerTransactorSession) ProposeAgentRootWhenStuck(agentRoot_ [32]byte) (*types.Transaction, error) { return _InterfaceLightManager.Contract.ProposeAgentRootWhenStuck(&_InterfaceLightManager.TransactOpts, agentRoot_) } // RemoteWithdrawTips is a paid mutator transaction binding the contract method 0x1fa07138. // // Solidity: function remoteWithdrawTips(uint32 msgOrigin, uint256 proofMaturity, address recipient, uint256 amount) returns(bytes4 magicValue) func (_InterfaceLightManager *InterfaceLightManagerTransactor) RemoteWithdrawTips(opts *bind.TransactOpts, msgOrigin uint32, proofMaturity *big.Int, recipient common.Address, amount *big.Int) (*types.Transaction, error) { return _InterfaceLightManager.contract.Transact(opts, "remoteWithdrawTips", msgOrigin, proofMaturity, recipient, amount) } // RemoteWithdrawTips is a paid mutator transaction binding the contract method 0x1fa07138. // // Solidity: function remoteWithdrawTips(uint32 msgOrigin, uint256 proofMaturity, address recipient, uint256 amount) returns(bytes4 magicValue) func (_InterfaceLightManager *InterfaceLightManagerSession) RemoteWithdrawTips(msgOrigin uint32, proofMaturity *big.Int, recipient common.Address, amount *big.Int) (*types.Transaction, error) { return _InterfaceLightManager.Contract.RemoteWithdrawTips(&_InterfaceLightManager.TransactOpts, msgOrigin, proofMaturity, recipient, amount) } // RemoteWithdrawTips is a paid mutator transaction binding the contract method 0x1fa07138. // // Solidity: function remoteWithdrawTips(uint32 msgOrigin, uint256 proofMaturity, address recipient, uint256 amount) returns(bytes4 magicValue) func (_InterfaceLightManager *InterfaceLightManagerTransactorSession) RemoteWithdrawTips(msgOrigin uint32, proofMaturity *big.Int, recipient common.Address, amount *big.Int) (*types.Transaction, error) { return _InterfaceLightManager.Contract.RemoteWithdrawTips(&_InterfaceLightManager.TransactOpts, msgOrigin, proofMaturity, recipient, amount) } // ResolveProposedAgentRoot is a paid mutator transaction binding the contract method 0x38416281. // // Solidity: function resolveProposedAgentRoot() returns() func (_InterfaceLightManager *InterfaceLightManagerTransactor) ResolveProposedAgentRoot(opts *bind.TransactOpts) (*types.Transaction, error) { return _InterfaceLightManager.contract.Transact(opts, "resolveProposedAgentRoot") } // ResolveProposedAgentRoot is a paid mutator transaction binding the contract method 0x38416281. // // Solidity: function resolveProposedAgentRoot() returns() func (_InterfaceLightManager *InterfaceLightManagerSession) ResolveProposedAgentRoot() (*types.Transaction, error) { return _InterfaceLightManager.Contract.ResolveProposedAgentRoot(&_InterfaceLightManager.TransactOpts) } // ResolveProposedAgentRoot is a paid mutator transaction binding the contract method 0x38416281. // // Solidity: function resolveProposedAgentRoot() returns() func (_InterfaceLightManager *InterfaceLightManagerTransactorSession) ResolveProposedAgentRoot() (*types.Transaction, error) { return _InterfaceLightManager.Contract.ResolveProposedAgentRoot(&_InterfaceLightManager.TransactOpts) } // SetAgentRoot is a paid mutator transaction binding the contract method 0x58668176. // // Solidity: function setAgentRoot(bytes32 agentRoot_) returns() func (_InterfaceLightManager *InterfaceLightManagerTransactor) SetAgentRoot(opts *bind.TransactOpts, agentRoot_ [32]byte) (*types.Transaction, error) { return _InterfaceLightManager.contract.Transact(opts, "setAgentRoot", agentRoot_) } // SetAgentRoot is a paid mutator transaction binding the contract method 0x58668176. // // Solidity: function setAgentRoot(bytes32 agentRoot_) returns() func (_InterfaceLightManager *InterfaceLightManagerSession) SetAgentRoot(agentRoot_ [32]byte) (*types.Transaction, error) { return _InterfaceLightManager.Contract.SetAgentRoot(&_InterfaceLightManager.TransactOpts, agentRoot_) } // SetAgentRoot is a paid mutator transaction binding the contract method 0x58668176. // // Solidity: function setAgentRoot(bytes32 agentRoot_) returns() func (_InterfaceLightManager *InterfaceLightManagerTransactorSession) SetAgentRoot(agentRoot_ [32]byte) (*types.Transaction, error) { return _InterfaceLightManager.Contract.SetAgentRoot(&_InterfaceLightManager.TransactOpts, agentRoot_) } // UpdateAgentStatus is a paid mutator transaction binding the contract method 0xcbd05965. // // Solidity: function updateAgentStatus(address agent, (uint8,uint32,uint32) status, bytes32[] proof) returns() func (_InterfaceLightManager *InterfaceLightManagerTransactor) UpdateAgentStatus(opts *bind.TransactOpts, agent common.Address, status AgentStatus, proof [][32]byte) (*types.Transaction, error) { return _InterfaceLightManager.contract.Transact(opts, "updateAgentStatus", agent, status, proof) } // UpdateAgentStatus is a paid mutator transaction binding the contract method 0xcbd05965. // // Solidity: function updateAgentStatus(address agent, (uint8,uint32,uint32) status, bytes32[] proof) returns() func (_InterfaceLightManager *InterfaceLightManagerSession) UpdateAgentStatus(agent common.Address, status AgentStatus, proof [][32]byte) (*types.Transaction, error) { return _InterfaceLightManager.Contract.UpdateAgentStatus(&_InterfaceLightManager.TransactOpts, agent, status, proof) } // UpdateAgentStatus is a paid mutator transaction binding the contract method 0xcbd05965. // // Solidity: function updateAgentStatus(address agent, (uint8,uint32,uint32) status, bytes32[] proof) returns() func (_InterfaceLightManager *InterfaceLightManagerTransactorSession) UpdateAgentStatus(agent common.Address, status AgentStatus, proof [][32]byte) (*types.Transaction, error) { return _InterfaceLightManager.Contract.UpdateAgentStatus(&_InterfaceLightManager.TransactOpts, agent, status, proof) } // MemViewLibMetaData contains all meta data concerning the MemViewLib contract. var MemViewLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220dd55ee53b6a0b1c7656dce4207af26b291f900c13be4e8776190ba60881ec43964736f6c63430008110033", } // MemViewLibABI is the input ABI used to generate the binding from. // Deprecated: Use MemViewLibMetaData.ABI instead. var MemViewLibABI = MemViewLibMetaData.ABI // MemViewLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use MemViewLibMetaData.Bin instead. var MemViewLibBin = MemViewLibMetaData.Bin // DeployMemViewLib deploys a new Ethereum contract, binding an instance of MemViewLib to it. func DeployMemViewLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *MemViewLib, error) { parsed, err := MemViewLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(MemViewLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &MemViewLib{MemViewLibCaller: MemViewLibCaller{contract: contract}, MemViewLibTransactor: MemViewLibTransactor{contract: contract}, MemViewLibFilterer: MemViewLibFilterer{contract: contract}}, nil } // MemViewLib is an auto generated Go binding around an Ethereum contract. type MemViewLib struct { MemViewLibCaller // Read-only binding to the contract MemViewLibTransactor // Write-only binding to the contract MemViewLibFilterer // Log filterer for contract events } // MemViewLibCaller is an auto generated read-only Go binding around an Ethereum contract. type MemViewLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MemViewLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type MemViewLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MemViewLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type MemViewLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MemViewLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type MemViewLibSession struct { Contract *MemViewLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MemViewLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type MemViewLibCallerSession struct { Contract *MemViewLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // MemViewLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type MemViewLibTransactorSession struct { Contract *MemViewLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MemViewLibRaw is an auto generated low-level Go binding around an Ethereum contract. type MemViewLibRaw struct { Contract *MemViewLib // Generic contract binding to access the raw methods on } // MemViewLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type MemViewLibCallerRaw struct { Contract *MemViewLibCaller // Generic read-only contract binding to access the raw methods on } // MemViewLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type MemViewLibTransactorRaw struct { Contract *MemViewLibTransactor // Generic write-only contract binding to access the raw methods on } // NewMemViewLib creates a new instance of MemViewLib, bound to a specific deployed contract. func NewMemViewLib(address common.Address, backend bind.ContractBackend) (*MemViewLib, error) { contract, err := bindMemViewLib(address, backend, backend, backend) if err != nil { return nil, err } return &MemViewLib{MemViewLibCaller: MemViewLibCaller{contract: contract}, MemViewLibTransactor: MemViewLibTransactor{contract: contract}, MemViewLibFilterer: MemViewLibFilterer{contract: contract}}, nil } // NewMemViewLibCaller creates a new read-only instance of MemViewLib, bound to a specific deployed contract. func NewMemViewLibCaller(address common.Address, caller bind.ContractCaller) (*MemViewLibCaller, error) { contract, err := bindMemViewLib(address, caller, nil, nil) if err != nil { return nil, err } return &MemViewLibCaller{contract: contract}, nil } // NewMemViewLibTransactor creates a new write-only instance of MemViewLib, bound to a specific deployed contract. func NewMemViewLibTransactor(address common.Address, transactor bind.ContractTransactor) (*MemViewLibTransactor, error) { contract, err := bindMemViewLib(address, nil, transactor, nil) if err != nil { return nil, err } return &MemViewLibTransactor{contract: contract}, nil } // NewMemViewLibFilterer creates a new log filterer instance of MemViewLib, bound to a specific deployed contract. func NewMemViewLibFilterer(address common.Address, filterer bind.ContractFilterer) (*MemViewLibFilterer, error) { contract, err := bindMemViewLib(address, nil, nil, filterer) if err != nil { return nil, err } return &MemViewLibFilterer{contract: contract}, nil } // bindMemViewLib binds a generic wrapper to an already deployed contract. func bindMemViewLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := MemViewLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MemViewLib *MemViewLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MemViewLib.Contract.MemViewLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MemViewLib *MemViewLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MemViewLib.Contract.MemViewLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MemViewLib *MemViewLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MemViewLib.Contract.MemViewLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MemViewLib *MemViewLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MemViewLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MemViewLib *MemViewLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MemViewLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MemViewLib *MemViewLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MemViewLib.Contract.contract.Transact(opts, method, params...) } // MerkleMathMetaData contains all meta data concerning the MerkleMath contract. var MerkleMathMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205488e8d097c2d8c37c7555b16623fa9379378871cbb80167ae753df3c9217ec664736f6c63430008110033", } // MerkleMathABI is the input ABI used to generate the binding from. // Deprecated: Use MerkleMathMetaData.ABI instead. var MerkleMathABI = MerkleMathMetaData.ABI // MerkleMathBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use MerkleMathMetaData.Bin instead. var MerkleMathBin = MerkleMathMetaData.Bin // DeployMerkleMath deploys a new Ethereum contract, binding an instance of MerkleMath to it. func DeployMerkleMath(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *MerkleMath, error) { parsed, err := MerkleMathMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(MerkleMathBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &MerkleMath{MerkleMathCaller: MerkleMathCaller{contract: contract}, MerkleMathTransactor: MerkleMathTransactor{contract: contract}, MerkleMathFilterer: MerkleMathFilterer{contract: contract}}, nil } // MerkleMath is an auto generated Go binding around an Ethereum contract. type MerkleMath struct { MerkleMathCaller // Read-only binding to the contract MerkleMathTransactor // Write-only binding to the contract MerkleMathFilterer // Log filterer for contract events } // MerkleMathCaller is an auto generated read-only Go binding around an Ethereum contract. type MerkleMathCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MerkleMathTransactor is an auto generated write-only Go binding around an Ethereum contract. type MerkleMathTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MerkleMathFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type MerkleMathFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MerkleMathSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type MerkleMathSession struct { Contract *MerkleMath // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MerkleMathCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type MerkleMathCallerSession struct { Contract *MerkleMathCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // MerkleMathTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type MerkleMathTransactorSession struct { Contract *MerkleMathTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MerkleMathRaw is an auto generated low-level Go binding around an Ethereum contract. type MerkleMathRaw struct { Contract *MerkleMath // Generic contract binding to access the raw methods on } // MerkleMathCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type MerkleMathCallerRaw struct { Contract *MerkleMathCaller // Generic read-only contract binding to access the raw methods on } // MerkleMathTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type MerkleMathTransactorRaw struct { Contract *MerkleMathTransactor // Generic write-only contract binding to access the raw methods on } // NewMerkleMath creates a new instance of MerkleMath, bound to a specific deployed contract. func NewMerkleMath(address common.Address, backend bind.ContractBackend) (*MerkleMath, error) { contract, err := bindMerkleMath(address, backend, backend, backend) if err != nil { return nil, err } return &MerkleMath{MerkleMathCaller: MerkleMathCaller{contract: contract}, MerkleMathTransactor: MerkleMathTransactor{contract: contract}, MerkleMathFilterer: MerkleMathFilterer{contract: contract}}, nil } // NewMerkleMathCaller creates a new read-only instance of MerkleMath, bound to a specific deployed contract. func NewMerkleMathCaller(address common.Address, caller bind.ContractCaller) (*MerkleMathCaller, error) { contract, err := bindMerkleMath(address, caller, nil, nil) if err != nil { return nil, err } return &MerkleMathCaller{contract: contract}, nil } // NewMerkleMathTransactor creates a new write-only instance of MerkleMath, bound to a specific deployed contract. func NewMerkleMathTransactor(address common.Address, transactor bind.ContractTransactor) (*MerkleMathTransactor, error) { contract, err := bindMerkleMath(address, nil, transactor, nil) if err != nil { return nil, err } return &MerkleMathTransactor{contract: contract}, nil } // NewMerkleMathFilterer creates a new log filterer instance of MerkleMath, bound to a specific deployed contract. func NewMerkleMathFilterer(address common.Address, filterer bind.ContractFilterer) (*MerkleMathFilterer, error) { contract, err := bindMerkleMath(address, nil, nil, filterer) if err != nil { return nil, err } return &MerkleMathFilterer{contract: contract}, nil } // bindMerkleMath binds a generic wrapper to an already deployed contract. func bindMerkleMath(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := MerkleMathMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MerkleMath *MerkleMathRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MerkleMath.Contract.MerkleMathCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MerkleMath *MerkleMathRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MerkleMath.Contract.MerkleMathTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MerkleMath *MerkleMathRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MerkleMath.Contract.MerkleMathTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MerkleMath *MerkleMathCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MerkleMath.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MerkleMath *MerkleMathTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MerkleMath.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MerkleMath *MerkleMathTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MerkleMath.Contract.contract.Transact(opts, method, params...) } // MessageLibMetaData contains all meta data concerning the MessageLib contract. var MessageLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212200aec72f8987ff2ef00cbffba1eb43d9caeee88295ae8214d46a8672c3e1d9bda64736f6c63430008110033", } // MessageLibABI is the input ABI used to generate the binding from. // Deprecated: Use MessageLibMetaData.ABI instead. var MessageLibABI = MessageLibMetaData.ABI // MessageLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use MessageLibMetaData.Bin instead. var MessageLibBin = MessageLibMetaData.Bin // DeployMessageLib deploys a new Ethereum contract, binding an instance of MessageLib to it. func DeployMessageLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *MessageLib, error) { parsed, err := MessageLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(MessageLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &MessageLib{MessageLibCaller: MessageLibCaller{contract: contract}, MessageLibTransactor: MessageLibTransactor{contract: contract}, MessageLibFilterer: MessageLibFilterer{contract: contract}}, nil } // MessageLib is an auto generated Go binding around an Ethereum contract. type MessageLib struct { MessageLibCaller // Read-only binding to the contract MessageLibTransactor // Write-only binding to the contract MessageLibFilterer // Log filterer for contract events } // MessageLibCaller is an auto generated read-only Go binding around an Ethereum contract. type MessageLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MessageLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type MessageLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MessageLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type MessageLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MessageLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type MessageLibSession struct { Contract *MessageLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MessageLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type MessageLibCallerSession struct { Contract *MessageLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // MessageLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type MessageLibTransactorSession struct { Contract *MessageLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MessageLibRaw is an auto generated low-level Go binding around an Ethereum contract. type MessageLibRaw struct { Contract *MessageLib // Generic contract binding to access the raw methods on } // MessageLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type MessageLibCallerRaw struct { Contract *MessageLibCaller // Generic read-only contract binding to access the raw methods on } // MessageLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type MessageLibTransactorRaw struct { Contract *MessageLibTransactor // Generic write-only contract binding to access the raw methods on } // NewMessageLib creates a new instance of MessageLib, bound to a specific deployed contract. func NewMessageLib(address common.Address, backend bind.ContractBackend) (*MessageLib, error) { contract, err := bindMessageLib(address, backend, backend, backend) if err != nil { return nil, err } return &MessageLib{MessageLibCaller: MessageLibCaller{contract: contract}, MessageLibTransactor: MessageLibTransactor{contract: contract}, MessageLibFilterer: MessageLibFilterer{contract: contract}}, nil } // NewMessageLibCaller creates a new read-only instance of MessageLib, bound to a specific deployed contract. func NewMessageLibCaller(address common.Address, caller bind.ContractCaller) (*MessageLibCaller, error) { contract, err := bindMessageLib(address, caller, nil, nil) if err != nil { return nil, err } return &MessageLibCaller{contract: contract}, nil } // NewMessageLibTransactor creates a new write-only instance of MessageLib, bound to a specific deployed contract. func NewMessageLibTransactor(address common.Address, transactor bind.ContractTransactor) (*MessageLibTransactor, error) { contract, err := bindMessageLib(address, nil, transactor, nil) if err != nil { return nil, err } return &MessageLibTransactor{contract: contract}, nil } // NewMessageLibFilterer creates a new log filterer instance of MessageLib, bound to a specific deployed contract. func NewMessageLibFilterer(address common.Address, filterer bind.ContractFilterer) (*MessageLibFilterer, error) { contract, err := bindMessageLib(address, nil, nil, filterer) if err != nil { return nil, err } return &MessageLibFilterer{contract: contract}, nil } // bindMessageLib binds a generic wrapper to an already deployed contract. func bindMessageLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := MessageLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MessageLib *MessageLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MessageLib.Contract.MessageLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MessageLib *MessageLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MessageLib.Contract.MessageLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MessageLib *MessageLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MessageLib.Contract.MessageLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MessageLib *MessageLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MessageLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MessageLib *MessageLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MessageLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MessageLib *MessageLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MessageLib.Contract.contract.Transact(opts, method, params...) } // MessagingBaseMetaData contains all meta data concerning the MessagingBase contract. var MessagingBaseMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"IncorrectVersionLength\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"localDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Result[]\",\"name\":\"callResults\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"synapseDomain\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"versionString\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "79ba5097": "acceptOwnership()", "8d3638f4": "localDomain()", "60fc8466": "multicall((bool,bytes)[])", "8da5cb5b": "owner()", "e30c3978": "pendingOwner()", "715018a6": "renounceOwnership()", "717b8638": "synapseDomain()", "f2fde38b": "transferOwnership(address)", "54fd4d50": "version()", }, } // MessagingBaseABI is the input ABI used to generate the binding from. // Deprecated: Use MessagingBaseMetaData.ABI instead. var MessagingBaseABI = MessagingBaseMetaData.ABI // Deprecated: Use MessagingBaseMetaData.Sigs instead. // MessagingBaseFuncSigs maps the 4-byte function signature to its string representation. var MessagingBaseFuncSigs = MessagingBaseMetaData.Sigs // MessagingBase is an auto generated Go binding around an Ethereum contract. type MessagingBase struct { MessagingBaseCaller // Read-only binding to the contract MessagingBaseTransactor // Write-only binding to the contract MessagingBaseFilterer // Log filterer for contract events } // MessagingBaseCaller is an auto generated read-only Go binding around an Ethereum contract. type MessagingBaseCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MessagingBaseTransactor is an auto generated write-only Go binding around an Ethereum contract. type MessagingBaseTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MessagingBaseFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type MessagingBaseFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MessagingBaseSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type MessagingBaseSession struct { Contract *MessagingBase // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MessagingBaseCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type MessagingBaseCallerSession struct { Contract *MessagingBaseCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // MessagingBaseTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type MessagingBaseTransactorSession struct { Contract *MessagingBaseTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MessagingBaseRaw is an auto generated low-level Go binding around an Ethereum contract. type MessagingBaseRaw struct { Contract *MessagingBase // Generic contract binding to access the raw methods on } // MessagingBaseCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type MessagingBaseCallerRaw struct { Contract *MessagingBaseCaller // Generic read-only contract binding to access the raw methods on } // MessagingBaseTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type MessagingBaseTransactorRaw struct { Contract *MessagingBaseTransactor // Generic write-only contract binding to access the raw methods on } // NewMessagingBase creates a new instance of MessagingBase, bound to a specific deployed contract. func NewMessagingBase(address common.Address, backend bind.ContractBackend) (*MessagingBase, error) { contract, err := bindMessagingBase(address, backend, backend, backend) if err != nil { return nil, err } return &MessagingBase{MessagingBaseCaller: MessagingBaseCaller{contract: contract}, MessagingBaseTransactor: MessagingBaseTransactor{contract: contract}, MessagingBaseFilterer: MessagingBaseFilterer{contract: contract}}, nil } // NewMessagingBaseCaller creates a new read-only instance of MessagingBase, bound to a specific deployed contract. func NewMessagingBaseCaller(address common.Address, caller bind.ContractCaller) (*MessagingBaseCaller, error) { contract, err := bindMessagingBase(address, caller, nil, nil) if err != nil { return nil, err } return &MessagingBaseCaller{contract: contract}, nil } // NewMessagingBaseTransactor creates a new write-only instance of MessagingBase, bound to a specific deployed contract. func NewMessagingBaseTransactor(address common.Address, transactor bind.ContractTransactor) (*MessagingBaseTransactor, error) { contract, err := bindMessagingBase(address, nil, transactor, nil) if err != nil { return nil, err } return &MessagingBaseTransactor{contract: contract}, nil } // NewMessagingBaseFilterer creates a new log filterer instance of MessagingBase, bound to a specific deployed contract. func NewMessagingBaseFilterer(address common.Address, filterer bind.ContractFilterer) (*MessagingBaseFilterer, error) { contract, err := bindMessagingBase(address, nil, nil, filterer) if err != nil { return nil, err } return &MessagingBaseFilterer{contract: contract}, nil } // bindMessagingBase binds a generic wrapper to an already deployed contract. func bindMessagingBase(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := MessagingBaseMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MessagingBase *MessagingBaseRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MessagingBase.Contract.MessagingBaseCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MessagingBase *MessagingBaseRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MessagingBase.Contract.MessagingBaseTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MessagingBase *MessagingBaseRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MessagingBase.Contract.MessagingBaseTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MessagingBase *MessagingBaseCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MessagingBase.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MessagingBase *MessagingBaseTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MessagingBase.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MessagingBase *MessagingBaseTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MessagingBase.Contract.contract.Transact(opts, method, params...) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_MessagingBase *MessagingBaseCaller) LocalDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _MessagingBase.contract.Call(opts, &out, "localDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_MessagingBase *MessagingBaseSession) LocalDomain() (uint32, error) { return _MessagingBase.Contract.LocalDomain(&_MessagingBase.CallOpts) } // LocalDomain is a free data retrieval call binding the contract method 0x8d3638f4. // // Solidity: function localDomain() view returns(uint32) func (_MessagingBase *MessagingBaseCallerSession) LocalDomain() (uint32, error) { return _MessagingBase.Contract.LocalDomain(&_MessagingBase.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_MessagingBase *MessagingBaseCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _MessagingBase.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_MessagingBase *MessagingBaseSession) Owner() (common.Address, error) { return _MessagingBase.Contract.Owner(&_MessagingBase.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_MessagingBase *MessagingBaseCallerSession) Owner() (common.Address, error) { return _MessagingBase.Contract.Owner(&_MessagingBase.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_MessagingBase *MessagingBaseCaller) PendingOwner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _MessagingBase.contract.Call(opts, &out, "pendingOwner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_MessagingBase *MessagingBaseSession) PendingOwner() (common.Address, error) { return _MessagingBase.Contract.PendingOwner(&_MessagingBase.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_MessagingBase *MessagingBaseCallerSession) PendingOwner() (common.Address, error) { return _MessagingBase.Contract.PendingOwner(&_MessagingBase.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_MessagingBase *MessagingBaseCaller) SynapseDomain(opts *bind.CallOpts) (uint32, error) { var out []interface{} err := _MessagingBase.contract.Call(opts, &out, "synapseDomain") if err != nil { return *new(uint32), err } out0 := *abi.ConvertType(out[0], new(uint32)).(*uint32) return out0, err } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_MessagingBase *MessagingBaseSession) SynapseDomain() (uint32, error) { return _MessagingBase.Contract.SynapseDomain(&_MessagingBase.CallOpts) } // SynapseDomain is a free data retrieval call binding the contract method 0x717b8638. // // Solidity: function synapseDomain() view returns(uint32) func (_MessagingBase *MessagingBaseCallerSession) SynapseDomain() (uint32, error) { return _MessagingBase.Contract.SynapseDomain(&_MessagingBase.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_MessagingBase *MessagingBaseCaller) Version(opts *bind.CallOpts) (string, error) { var out []interface{} err := _MessagingBase.contract.Call(opts, &out, "version") if err != nil { return *new(string), err } out0 := *abi.ConvertType(out[0], new(string)).(*string) return out0, err } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_MessagingBase *MessagingBaseSession) Version() (string, error) { return _MessagingBase.Contract.Version(&_MessagingBase.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_MessagingBase *MessagingBaseCallerSession) Version() (string, error) { return _MessagingBase.Contract.Version(&_MessagingBase.CallOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_MessagingBase *MessagingBaseTransactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _MessagingBase.contract.Transact(opts, "acceptOwnership") } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_MessagingBase *MessagingBaseSession) AcceptOwnership() (*types.Transaction, error) { return _MessagingBase.Contract.AcceptOwnership(&_MessagingBase.TransactOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_MessagingBase *MessagingBaseTransactorSession) AcceptOwnership() (*types.Transaction, error) { return _MessagingBase.Contract.AcceptOwnership(&_MessagingBase.TransactOpts) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_MessagingBase *MessagingBaseTransactor) Multicall(opts *bind.TransactOpts, calls []MultiCallableCall) (*types.Transaction, error) { return _MessagingBase.contract.Transact(opts, "multicall", calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_MessagingBase *MessagingBaseSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _MessagingBase.Contract.Multicall(&_MessagingBase.TransactOpts, calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_MessagingBase *MessagingBaseTransactorSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _MessagingBase.Contract.Multicall(&_MessagingBase.TransactOpts, calls) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_MessagingBase *MessagingBaseTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _MessagingBase.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_MessagingBase *MessagingBaseSession) RenounceOwnership() (*types.Transaction, error) { return _MessagingBase.Contract.RenounceOwnership(&_MessagingBase.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_MessagingBase *MessagingBaseTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _MessagingBase.Contract.RenounceOwnership(&_MessagingBase.TransactOpts) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_MessagingBase *MessagingBaseTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _MessagingBase.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_MessagingBase *MessagingBaseSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _MessagingBase.Contract.TransferOwnership(&_MessagingBase.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_MessagingBase *MessagingBaseTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _MessagingBase.Contract.TransferOwnership(&_MessagingBase.TransactOpts, newOwner) } // MessagingBaseInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the MessagingBase contract. type MessagingBaseInitializedIterator struct { Event *MessagingBaseInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *MessagingBaseInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(MessagingBaseInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(MessagingBaseInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *MessagingBaseInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *MessagingBaseInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // MessagingBaseInitialized represents a Initialized event raised by the MessagingBase contract. type MessagingBaseInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_MessagingBase *MessagingBaseFilterer) FilterInitialized(opts *bind.FilterOpts) (*MessagingBaseInitializedIterator, error) { logs, sub, err := _MessagingBase.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &MessagingBaseInitializedIterator{contract: _MessagingBase.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_MessagingBase *MessagingBaseFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *MessagingBaseInitialized) (event.Subscription, error) { logs, sub, err := _MessagingBase.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(MessagingBaseInitialized) if err := _MessagingBase.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_MessagingBase *MessagingBaseFilterer) ParseInitialized(log types.Log) (*MessagingBaseInitialized, error) { event := new(MessagingBaseInitialized) if err := _MessagingBase.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // MessagingBaseOwnershipTransferStartedIterator is returned from FilterOwnershipTransferStarted and is used to iterate over the raw logs and unpacked data for OwnershipTransferStarted events raised by the MessagingBase contract. type MessagingBaseOwnershipTransferStartedIterator struct { Event *MessagingBaseOwnershipTransferStarted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *MessagingBaseOwnershipTransferStartedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(MessagingBaseOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(MessagingBaseOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *MessagingBaseOwnershipTransferStartedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *MessagingBaseOwnershipTransferStartedIterator) Close() error { it.sub.Unsubscribe() return nil } // MessagingBaseOwnershipTransferStarted represents a OwnershipTransferStarted event raised by the MessagingBase contract. type MessagingBaseOwnershipTransferStarted struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferStarted is a free log retrieval operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_MessagingBase *MessagingBaseFilterer) FilterOwnershipTransferStarted(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*MessagingBaseOwnershipTransferStartedIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _MessagingBase.contract.FilterLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &MessagingBaseOwnershipTransferStartedIterator{contract: _MessagingBase.contract, event: "OwnershipTransferStarted", logs: logs, sub: sub}, nil } // WatchOwnershipTransferStarted is a free log subscription operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_MessagingBase *MessagingBaseFilterer) WatchOwnershipTransferStarted(opts *bind.WatchOpts, sink chan<- *MessagingBaseOwnershipTransferStarted, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _MessagingBase.contract.WatchLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(MessagingBaseOwnershipTransferStarted) if err := _MessagingBase.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferStarted is a log parse operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_MessagingBase *MessagingBaseFilterer) ParseOwnershipTransferStarted(log types.Log) (*MessagingBaseOwnershipTransferStarted, error) { event := new(MessagingBaseOwnershipTransferStarted) if err := _MessagingBase.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return nil, err } event.Raw = log return event, nil } // MessagingBaseOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the MessagingBase contract. type MessagingBaseOwnershipTransferredIterator struct { Event *MessagingBaseOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *MessagingBaseOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(MessagingBaseOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(MessagingBaseOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *MessagingBaseOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *MessagingBaseOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // MessagingBaseOwnershipTransferred represents a OwnershipTransferred event raised by the MessagingBase contract. type MessagingBaseOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_MessagingBase *MessagingBaseFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*MessagingBaseOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _MessagingBase.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &MessagingBaseOwnershipTransferredIterator{contract: _MessagingBase.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_MessagingBase *MessagingBaseFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *MessagingBaseOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _MessagingBase.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(MessagingBaseOwnershipTransferred) if err := _MessagingBase.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_MessagingBase *MessagingBaseFilterer) ParseOwnershipTransferred(log types.Log) (*MessagingBaseOwnershipTransferred, error) { event := new(MessagingBaseOwnershipTransferred) if err := _MessagingBase.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // MultiCallableMetaData contains all meta data concerning the MultiCallable contract. var MultiCallableMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structMultiCallable.Result[]\",\"name\":\"callResults\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "60fc8466": "multicall((bool,bytes)[])", }, } // MultiCallableABI is the input ABI used to generate the binding from. // Deprecated: Use MultiCallableMetaData.ABI instead. var MultiCallableABI = MultiCallableMetaData.ABI // Deprecated: Use MultiCallableMetaData.Sigs instead. // MultiCallableFuncSigs maps the 4-byte function signature to its string representation. var MultiCallableFuncSigs = MultiCallableMetaData.Sigs // MultiCallable is an auto generated Go binding around an Ethereum contract. type MultiCallable struct { MultiCallableCaller // Read-only binding to the contract MultiCallableTransactor // Write-only binding to the contract MultiCallableFilterer // Log filterer for contract events } // MultiCallableCaller is an auto generated read-only Go binding around an Ethereum contract. type MultiCallableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MultiCallableTransactor is an auto generated write-only Go binding around an Ethereum contract. type MultiCallableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MultiCallableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type MultiCallableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // MultiCallableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type MultiCallableSession struct { Contract *MultiCallable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MultiCallableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type MultiCallableCallerSession struct { Contract *MultiCallableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // MultiCallableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type MultiCallableTransactorSession struct { Contract *MultiCallableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // MultiCallableRaw is an auto generated low-level Go binding around an Ethereum contract. type MultiCallableRaw struct { Contract *MultiCallable // Generic contract binding to access the raw methods on } // MultiCallableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type MultiCallableCallerRaw struct { Contract *MultiCallableCaller // Generic read-only contract binding to access the raw methods on } // MultiCallableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type MultiCallableTransactorRaw struct { Contract *MultiCallableTransactor // Generic write-only contract binding to access the raw methods on } // NewMultiCallable creates a new instance of MultiCallable, bound to a specific deployed contract. func NewMultiCallable(address common.Address, backend bind.ContractBackend) (*MultiCallable, error) { contract, err := bindMultiCallable(address, backend, backend, backend) if err != nil { return nil, err } return &MultiCallable{MultiCallableCaller: MultiCallableCaller{contract: contract}, MultiCallableTransactor: MultiCallableTransactor{contract: contract}, MultiCallableFilterer: MultiCallableFilterer{contract: contract}}, nil } // NewMultiCallableCaller creates a new read-only instance of MultiCallable, bound to a specific deployed contract. func NewMultiCallableCaller(address common.Address, caller bind.ContractCaller) (*MultiCallableCaller, error) { contract, err := bindMultiCallable(address, caller, nil, nil) if err != nil { return nil, err } return &MultiCallableCaller{contract: contract}, nil } // NewMultiCallableTransactor creates a new write-only instance of MultiCallable, bound to a specific deployed contract. func NewMultiCallableTransactor(address common.Address, transactor bind.ContractTransactor) (*MultiCallableTransactor, error) { contract, err := bindMultiCallable(address, nil, transactor, nil) if err != nil { return nil, err } return &MultiCallableTransactor{contract: contract}, nil } // NewMultiCallableFilterer creates a new log filterer instance of MultiCallable, bound to a specific deployed contract. func NewMultiCallableFilterer(address common.Address, filterer bind.ContractFilterer) (*MultiCallableFilterer, error) { contract, err := bindMultiCallable(address, nil, nil, filterer) if err != nil { return nil, err } return &MultiCallableFilterer{contract: contract}, nil } // bindMultiCallable binds a generic wrapper to an already deployed contract. func bindMultiCallable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := MultiCallableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MultiCallable *MultiCallableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MultiCallable.Contract.MultiCallableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MultiCallable *MultiCallableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MultiCallable.Contract.MultiCallableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MultiCallable *MultiCallableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MultiCallable.Contract.MultiCallableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_MultiCallable *MultiCallableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _MultiCallable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_MultiCallable *MultiCallableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _MultiCallable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_MultiCallable *MultiCallableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _MultiCallable.Contract.contract.Transact(opts, method, params...) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_MultiCallable *MultiCallableTransactor) Multicall(opts *bind.TransactOpts, calls []MultiCallableCall) (*types.Transaction, error) { return _MultiCallable.contract.Transact(opts, "multicall", calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_MultiCallable *MultiCallableSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _MultiCallable.Contract.Multicall(&_MultiCallable.TransactOpts, calls) } // Multicall is a paid mutator transaction binding the contract method 0x60fc8466. // // Solidity: function multicall((bool,bytes)[] calls) returns((bool,bytes)[] callResults) func (_MultiCallable *MultiCallableTransactorSession) Multicall(calls []MultiCallableCall) (*types.Transaction, error) { return _MultiCallable.Contract.Multicall(&_MultiCallable.TransactOpts, calls) } // NumberLibMetaData contains all meta data concerning the NumberLib contract. var NumberLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220bec47c0883a87a4681c1637a539051ca808f3ecd419126feab8abd3f7317a38a64736f6c63430008110033", } // NumberLibABI is the input ABI used to generate the binding from. // Deprecated: Use NumberLibMetaData.ABI instead. var NumberLibABI = NumberLibMetaData.ABI // NumberLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use NumberLibMetaData.Bin instead. var NumberLibBin = NumberLibMetaData.Bin // DeployNumberLib deploys a new Ethereum contract, binding an instance of NumberLib to it. func DeployNumberLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *NumberLib, error) { parsed, err := NumberLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(NumberLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &NumberLib{NumberLibCaller: NumberLibCaller{contract: contract}, NumberLibTransactor: NumberLibTransactor{contract: contract}, NumberLibFilterer: NumberLibFilterer{contract: contract}}, nil } // NumberLib is an auto generated Go binding around an Ethereum contract. type NumberLib struct { NumberLibCaller // Read-only binding to the contract NumberLibTransactor // Write-only binding to the contract NumberLibFilterer // Log filterer for contract events } // NumberLibCaller is an auto generated read-only Go binding around an Ethereum contract. type NumberLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // NumberLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type NumberLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // NumberLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type NumberLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // NumberLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type NumberLibSession struct { Contract *NumberLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // NumberLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type NumberLibCallerSession struct { Contract *NumberLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // NumberLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type NumberLibTransactorSession struct { Contract *NumberLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // NumberLibRaw is an auto generated low-level Go binding around an Ethereum contract. type NumberLibRaw struct { Contract *NumberLib // Generic contract binding to access the raw methods on } // NumberLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type NumberLibCallerRaw struct { Contract *NumberLibCaller // Generic read-only contract binding to access the raw methods on } // NumberLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type NumberLibTransactorRaw struct { Contract *NumberLibTransactor // Generic write-only contract binding to access the raw methods on } // NewNumberLib creates a new instance of NumberLib, bound to a specific deployed contract. func NewNumberLib(address common.Address, backend bind.ContractBackend) (*NumberLib, error) { contract, err := bindNumberLib(address, backend, backend, backend) if err != nil { return nil, err } return &NumberLib{NumberLibCaller: NumberLibCaller{contract: contract}, NumberLibTransactor: NumberLibTransactor{contract: contract}, NumberLibFilterer: NumberLibFilterer{contract: contract}}, nil } // NewNumberLibCaller creates a new read-only instance of NumberLib, bound to a specific deployed contract. func NewNumberLibCaller(address common.Address, caller bind.ContractCaller) (*NumberLibCaller, error) { contract, err := bindNumberLib(address, caller, nil, nil) if err != nil { return nil, err } return &NumberLibCaller{contract: contract}, nil } // NewNumberLibTransactor creates a new write-only instance of NumberLib, bound to a specific deployed contract. func NewNumberLibTransactor(address common.Address, transactor bind.ContractTransactor) (*NumberLibTransactor, error) { contract, err := bindNumberLib(address, nil, transactor, nil) if err != nil { return nil, err } return &NumberLibTransactor{contract: contract}, nil } // NewNumberLibFilterer creates a new log filterer instance of NumberLib, bound to a specific deployed contract. func NewNumberLibFilterer(address common.Address, filterer bind.ContractFilterer) (*NumberLibFilterer, error) { contract, err := bindNumberLib(address, nil, nil, filterer) if err != nil { return nil, err } return &NumberLibFilterer{contract: contract}, nil } // bindNumberLib binds a generic wrapper to an already deployed contract. func bindNumberLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := NumberLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_NumberLib *NumberLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _NumberLib.Contract.NumberLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_NumberLib *NumberLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _NumberLib.Contract.NumberLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_NumberLib *NumberLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _NumberLib.Contract.NumberLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_NumberLib *NumberLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _NumberLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_NumberLib *NumberLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _NumberLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_NumberLib *NumberLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _NumberLib.Contract.contract.Transact(opts, method, params...) } // Ownable2StepUpgradeableMetaData contains all meta data concerning the Ownable2StepUpgradeable contract. var Ownable2StepUpgradeableMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "79ba5097": "acceptOwnership()", "8da5cb5b": "owner()", "e30c3978": "pendingOwner()", "715018a6": "renounceOwnership()", "f2fde38b": "transferOwnership(address)", }, } // Ownable2StepUpgradeableABI is the input ABI used to generate the binding from. // Deprecated: Use Ownable2StepUpgradeableMetaData.ABI instead. var Ownable2StepUpgradeableABI = Ownable2StepUpgradeableMetaData.ABI // Deprecated: Use Ownable2StepUpgradeableMetaData.Sigs instead. // Ownable2StepUpgradeableFuncSigs maps the 4-byte function signature to its string representation. var Ownable2StepUpgradeableFuncSigs = Ownable2StepUpgradeableMetaData.Sigs // Ownable2StepUpgradeable is an auto generated Go binding around an Ethereum contract. type Ownable2StepUpgradeable struct { Ownable2StepUpgradeableCaller // Read-only binding to the contract Ownable2StepUpgradeableTransactor // Write-only binding to the contract Ownable2StepUpgradeableFilterer // Log filterer for contract events } // Ownable2StepUpgradeableCaller is an auto generated read-only Go binding around an Ethereum contract. type Ownable2StepUpgradeableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // Ownable2StepUpgradeableTransactor is an auto generated write-only Go binding around an Ethereum contract. type Ownable2StepUpgradeableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // Ownable2StepUpgradeableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type Ownable2StepUpgradeableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // Ownable2StepUpgradeableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type Ownable2StepUpgradeableSession struct { Contract *Ownable2StepUpgradeable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // Ownable2StepUpgradeableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type Ownable2StepUpgradeableCallerSession struct { Contract *Ownable2StepUpgradeableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // Ownable2StepUpgradeableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type Ownable2StepUpgradeableTransactorSession struct { Contract *Ownable2StepUpgradeableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // Ownable2StepUpgradeableRaw is an auto generated low-level Go binding around an Ethereum contract. type Ownable2StepUpgradeableRaw struct { Contract *Ownable2StepUpgradeable // Generic contract binding to access the raw methods on } // Ownable2StepUpgradeableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type Ownable2StepUpgradeableCallerRaw struct { Contract *Ownable2StepUpgradeableCaller // Generic read-only contract binding to access the raw methods on } // Ownable2StepUpgradeableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type Ownable2StepUpgradeableTransactorRaw struct { Contract *Ownable2StepUpgradeableTransactor // Generic write-only contract binding to access the raw methods on } // NewOwnable2StepUpgradeable creates a new instance of Ownable2StepUpgradeable, bound to a specific deployed contract. func NewOwnable2StepUpgradeable(address common.Address, backend bind.ContractBackend) (*Ownable2StepUpgradeable, error) { contract, err := bindOwnable2StepUpgradeable(address, backend, backend, backend) if err != nil { return nil, err } return &Ownable2StepUpgradeable{Ownable2StepUpgradeableCaller: Ownable2StepUpgradeableCaller{contract: contract}, Ownable2StepUpgradeableTransactor: Ownable2StepUpgradeableTransactor{contract: contract}, Ownable2StepUpgradeableFilterer: Ownable2StepUpgradeableFilterer{contract: contract}}, nil } // NewOwnable2StepUpgradeableCaller creates a new read-only instance of Ownable2StepUpgradeable, bound to a specific deployed contract. func NewOwnable2StepUpgradeableCaller(address common.Address, caller bind.ContractCaller) (*Ownable2StepUpgradeableCaller, error) { contract, err := bindOwnable2StepUpgradeable(address, caller, nil, nil) if err != nil { return nil, err } return &Ownable2StepUpgradeableCaller{contract: contract}, nil } // NewOwnable2StepUpgradeableTransactor creates a new write-only instance of Ownable2StepUpgradeable, bound to a specific deployed contract. func NewOwnable2StepUpgradeableTransactor(address common.Address, transactor bind.ContractTransactor) (*Ownable2StepUpgradeableTransactor, error) { contract, err := bindOwnable2StepUpgradeable(address, nil, transactor, nil) if err != nil { return nil, err } return &Ownable2StepUpgradeableTransactor{contract: contract}, nil } // NewOwnable2StepUpgradeableFilterer creates a new log filterer instance of Ownable2StepUpgradeable, bound to a specific deployed contract. func NewOwnable2StepUpgradeableFilterer(address common.Address, filterer bind.ContractFilterer) (*Ownable2StepUpgradeableFilterer, error) { contract, err := bindOwnable2StepUpgradeable(address, nil, nil, filterer) if err != nil { return nil, err } return &Ownable2StepUpgradeableFilterer{contract: contract}, nil } // bindOwnable2StepUpgradeable binds a generic wrapper to an already deployed contract. func bindOwnable2StepUpgradeable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := Ownable2StepUpgradeableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Ownable2StepUpgradeable.Contract.Ownable2StepUpgradeableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.Ownable2StepUpgradeableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.Ownable2StepUpgradeableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Ownable2StepUpgradeable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.contract.Transact(opts, method, params...) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _Ownable2StepUpgradeable.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableSession) Owner() (common.Address, error) { return _Ownable2StepUpgradeable.Contract.Owner(&_Ownable2StepUpgradeable.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableCallerSession) Owner() (common.Address, error) { return _Ownable2StepUpgradeable.Contract.Owner(&_Ownable2StepUpgradeable.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableCaller) PendingOwner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _Ownable2StepUpgradeable.contract.Call(opts, &out, "pendingOwner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableSession) PendingOwner() (common.Address, error) { return _Ownable2StepUpgradeable.Contract.PendingOwner(&_Ownable2StepUpgradeable.CallOpts) } // PendingOwner is a free data retrieval call binding the contract method 0xe30c3978. // // Solidity: function pendingOwner() view returns(address) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableCallerSession) PendingOwner() (common.Address, error) { return _Ownable2StepUpgradeable.Contract.PendingOwner(&_Ownable2StepUpgradeable.CallOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _Ownable2StepUpgradeable.contract.Transact(opts, "acceptOwnership") } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableSession) AcceptOwnership() (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.AcceptOwnership(&_Ownable2StepUpgradeable.TransactOpts) } // AcceptOwnership is a paid mutator transaction binding the contract method 0x79ba5097. // // Solidity: function acceptOwnership() returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactorSession) AcceptOwnership() (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.AcceptOwnership(&_Ownable2StepUpgradeable.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _Ownable2StepUpgradeable.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableSession) RenounceOwnership() (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.RenounceOwnership(&_Ownable2StepUpgradeable.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.RenounceOwnership(&_Ownable2StepUpgradeable.TransactOpts) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _Ownable2StepUpgradeable.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.TransferOwnership(&_Ownable2StepUpgradeable.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _Ownable2StepUpgradeable.Contract.TransferOwnership(&_Ownable2StepUpgradeable.TransactOpts, newOwner) } // Ownable2StepUpgradeableInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the Ownable2StepUpgradeable contract. type Ownable2StepUpgradeableInitializedIterator struct { Event *Ownable2StepUpgradeableInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *Ownable2StepUpgradeableInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(Ownable2StepUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(Ownable2StepUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *Ownable2StepUpgradeableInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *Ownable2StepUpgradeableInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // Ownable2StepUpgradeableInitialized represents a Initialized event raised by the Ownable2StepUpgradeable contract. type Ownable2StepUpgradeableInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) FilterInitialized(opts *bind.FilterOpts) (*Ownable2StepUpgradeableInitializedIterator, error) { logs, sub, err := _Ownable2StepUpgradeable.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &Ownable2StepUpgradeableInitializedIterator{contract: _Ownable2StepUpgradeable.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *Ownable2StepUpgradeableInitialized) (event.Subscription, error) { logs, sub, err := _Ownable2StepUpgradeable.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(Ownable2StepUpgradeableInitialized) if err := _Ownable2StepUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) ParseInitialized(log types.Log) (*Ownable2StepUpgradeableInitialized, error) { event := new(Ownable2StepUpgradeableInitialized) if err := _Ownable2StepUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // Ownable2StepUpgradeableOwnershipTransferStartedIterator is returned from FilterOwnershipTransferStarted and is used to iterate over the raw logs and unpacked data for OwnershipTransferStarted events raised by the Ownable2StepUpgradeable contract. type Ownable2StepUpgradeableOwnershipTransferStartedIterator struct { Event *Ownable2StepUpgradeableOwnershipTransferStarted // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *Ownable2StepUpgradeableOwnershipTransferStartedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(Ownable2StepUpgradeableOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(Ownable2StepUpgradeableOwnershipTransferStarted) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *Ownable2StepUpgradeableOwnershipTransferStartedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *Ownable2StepUpgradeableOwnershipTransferStartedIterator) Close() error { it.sub.Unsubscribe() return nil } // Ownable2StepUpgradeableOwnershipTransferStarted represents a OwnershipTransferStarted event raised by the Ownable2StepUpgradeable contract. type Ownable2StepUpgradeableOwnershipTransferStarted struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferStarted is a free log retrieval operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) FilterOwnershipTransferStarted(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*Ownable2StepUpgradeableOwnershipTransferStartedIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Ownable2StepUpgradeable.contract.FilterLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &Ownable2StepUpgradeableOwnershipTransferStartedIterator{contract: _Ownable2StepUpgradeable.contract, event: "OwnershipTransferStarted", logs: logs, sub: sub}, nil } // WatchOwnershipTransferStarted is a free log subscription operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) WatchOwnershipTransferStarted(opts *bind.WatchOpts, sink chan<- *Ownable2StepUpgradeableOwnershipTransferStarted, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Ownable2StepUpgradeable.contract.WatchLogs(opts, "OwnershipTransferStarted", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(Ownable2StepUpgradeableOwnershipTransferStarted) if err := _Ownable2StepUpgradeable.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferStarted is a log parse operation binding the contract event 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700. // // Solidity: event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) ParseOwnershipTransferStarted(log types.Log) (*Ownable2StepUpgradeableOwnershipTransferStarted, error) { event := new(Ownable2StepUpgradeableOwnershipTransferStarted) if err := _Ownable2StepUpgradeable.contract.UnpackLog(event, "OwnershipTransferStarted", log); err != nil { return nil, err } event.Raw = log return event, nil } // Ownable2StepUpgradeableOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Ownable2StepUpgradeable contract. type Ownable2StepUpgradeableOwnershipTransferredIterator struct { Event *Ownable2StepUpgradeableOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *Ownable2StepUpgradeableOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(Ownable2StepUpgradeableOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(Ownable2StepUpgradeableOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *Ownable2StepUpgradeableOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *Ownable2StepUpgradeableOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // Ownable2StepUpgradeableOwnershipTransferred represents a OwnershipTransferred event raised by the Ownable2StepUpgradeable contract. type Ownable2StepUpgradeableOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*Ownable2StepUpgradeableOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Ownable2StepUpgradeable.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &Ownable2StepUpgradeableOwnershipTransferredIterator{contract: _Ownable2StepUpgradeable.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *Ownable2StepUpgradeableOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _Ownable2StepUpgradeable.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(Ownable2StepUpgradeableOwnershipTransferred) if err := _Ownable2StepUpgradeable.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_Ownable2StepUpgradeable *Ownable2StepUpgradeableFilterer) ParseOwnershipTransferred(log types.Log) (*Ownable2StepUpgradeableOwnershipTransferred, error) { event := new(Ownable2StepUpgradeableOwnershipTransferred) if err := _Ownable2StepUpgradeable.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // OwnableUpgradeableMetaData contains all meta data concerning the OwnableUpgradeable contract. var OwnableUpgradeableMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", Sigs: map[string]string{ "8da5cb5b": "owner()", "715018a6": "renounceOwnership()", "f2fde38b": "transferOwnership(address)", }, } // OwnableUpgradeableABI is the input ABI used to generate the binding from. // Deprecated: Use OwnableUpgradeableMetaData.ABI instead. var OwnableUpgradeableABI = OwnableUpgradeableMetaData.ABI // Deprecated: Use OwnableUpgradeableMetaData.Sigs instead. // OwnableUpgradeableFuncSigs maps the 4-byte function signature to its string representation. var OwnableUpgradeableFuncSigs = OwnableUpgradeableMetaData.Sigs // OwnableUpgradeable is an auto generated Go binding around an Ethereum contract. type OwnableUpgradeable struct { OwnableUpgradeableCaller // Read-only binding to the contract OwnableUpgradeableTransactor // Write-only binding to the contract OwnableUpgradeableFilterer // Log filterer for contract events } // OwnableUpgradeableCaller is an auto generated read-only Go binding around an Ethereum contract. type OwnableUpgradeableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // OwnableUpgradeableTransactor is an auto generated write-only Go binding around an Ethereum contract. type OwnableUpgradeableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // OwnableUpgradeableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type OwnableUpgradeableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // OwnableUpgradeableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type OwnableUpgradeableSession struct { Contract *OwnableUpgradeable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // OwnableUpgradeableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type OwnableUpgradeableCallerSession struct { Contract *OwnableUpgradeableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // OwnableUpgradeableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type OwnableUpgradeableTransactorSession struct { Contract *OwnableUpgradeableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // OwnableUpgradeableRaw is an auto generated low-level Go binding around an Ethereum contract. type OwnableUpgradeableRaw struct { Contract *OwnableUpgradeable // Generic contract binding to access the raw methods on } // OwnableUpgradeableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type OwnableUpgradeableCallerRaw struct { Contract *OwnableUpgradeableCaller // Generic read-only contract binding to access the raw methods on } // OwnableUpgradeableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type OwnableUpgradeableTransactorRaw struct { Contract *OwnableUpgradeableTransactor // Generic write-only contract binding to access the raw methods on } // NewOwnableUpgradeable creates a new instance of OwnableUpgradeable, bound to a specific deployed contract. func NewOwnableUpgradeable(address common.Address, backend bind.ContractBackend) (*OwnableUpgradeable, error) { contract, err := bindOwnableUpgradeable(address, backend, backend, backend) if err != nil { return nil, err } return &OwnableUpgradeable{OwnableUpgradeableCaller: OwnableUpgradeableCaller{contract: contract}, OwnableUpgradeableTransactor: OwnableUpgradeableTransactor{contract: contract}, OwnableUpgradeableFilterer: OwnableUpgradeableFilterer{contract: contract}}, nil } // NewOwnableUpgradeableCaller creates a new read-only instance of OwnableUpgradeable, bound to a specific deployed contract. func NewOwnableUpgradeableCaller(address common.Address, caller bind.ContractCaller) (*OwnableUpgradeableCaller, error) { contract, err := bindOwnableUpgradeable(address, caller, nil, nil) if err != nil { return nil, err } return &OwnableUpgradeableCaller{contract: contract}, nil } // NewOwnableUpgradeableTransactor creates a new write-only instance of OwnableUpgradeable, bound to a specific deployed contract. func NewOwnableUpgradeableTransactor(address common.Address, transactor bind.ContractTransactor) (*OwnableUpgradeableTransactor, error) { contract, err := bindOwnableUpgradeable(address, nil, transactor, nil) if err != nil { return nil, err } return &OwnableUpgradeableTransactor{contract: contract}, nil } // NewOwnableUpgradeableFilterer creates a new log filterer instance of OwnableUpgradeable, bound to a specific deployed contract. func NewOwnableUpgradeableFilterer(address common.Address, filterer bind.ContractFilterer) (*OwnableUpgradeableFilterer, error) { contract, err := bindOwnableUpgradeable(address, nil, nil, filterer) if err != nil { return nil, err } return &OwnableUpgradeableFilterer{contract: contract}, nil } // bindOwnableUpgradeable binds a generic wrapper to an already deployed contract. func bindOwnableUpgradeable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := OwnableUpgradeableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_OwnableUpgradeable *OwnableUpgradeableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _OwnableUpgradeable.Contract.OwnableUpgradeableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_OwnableUpgradeable *OwnableUpgradeableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _OwnableUpgradeable.Contract.OwnableUpgradeableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_OwnableUpgradeable *OwnableUpgradeableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _OwnableUpgradeable.Contract.OwnableUpgradeableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_OwnableUpgradeable *OwnableUpgradeableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _OwnableUpgradeable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_OwnableUpgradeable *OwnableUpgradeableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _OwnableUpgradeable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_OwnableUpgradeable *OwnableUpgradeableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _OwnableUpgradeable.Contract.contract.Transact(opts, method, params...) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_OwnableUpgradeable *OwnableUpgradeableCaller) Owner(opts *bind.CallOpts) (common.Address, error) { var out []interface{} err := _OwnableUpgradeable.contract.Call(opts, &out, "owner") if err != nil { return *new(common.Address), err } out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) return out0, err } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_OwnableUpgradeable *OwnableUpgradeableSession) Owner() (common.Address, error) { return _OwnableUpgradeable.Contract.Owner(&_OwnableUpgradeable.CallOpts) } // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. // // Solidity: function owner() view returns(address) func (_OwnableUpgradeable *OwnableUpgradeableCallerSession) Owner() (common.Address, error) { return _OwnableUpgradeable.Contract.Owner(&_OwnableUpgradeable.CallOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_OwnableUpgradeable *OwnableUpgradeableTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { return _OwnableUpgradeable.contract.Transact(opts, "renounceOwnership") } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_OwnableUpgradeable *OwnableUpgradeableSession) RenounceOwnership() (*types.Transaction, error) { return _OwnableUpgradeable.Contract.RenounceOwnership(&_OwnableUpgradeable.TransactOpts) } // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. // // Solidity: function renounceOwnership() returns() func (_OwnableUpgradeable *OwnableUpgradeableTransactorSession) RenounceOwnership() (*types.Transaction, error) { return _OwnableUpgradeable.Contract.RenounceOwnership(&_OwnableUpgradeable.TransactOpts) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_OwnableUpgradeable *OwnableUpgradeableTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { return _OwnableUpgradeable.contract.Transact(opts, "transferOwnership", newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_OwnableUpgradeable *OwnableUpgradeableSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _OwnableUpgradeable.Contract.TransferOwnership(&_OwnableUpgradeable.TransactOpts, newOwner) } // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. // // Solidity: function transferOwnership(address newOwner) returns() func (_OwnableUpgradeable *OwnableUpgradeableTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { return _OwnableUpgradeable.Contract.TransferOwnership(&_OwnableUpgradeable.TransactOpts, newOwner) } // OwnableUpgradeableInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the OwnableUpgradeable contract. type OwnableUpgradeableInitializedIterator struct { Event *OwnableUpgradeableInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *OwnableUpgradeableInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(OwnableUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(OwnableUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *OwnableUpgradeableInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *OwnableUpgradeableInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // OwnableUpgradeableInitialized represents a Initialized event raised by the OwnableUpgradeable contract. type OwnableUpgradeableInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_OwnableUpgradeable *OwnableUpgradeableFilterer) FilterInitialized(opts *bind.FilterOpts) (*OwnableUpgradeableInitializedIterator, error) { logs, sub, err := _OwnableUpgradeable.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &OwnableUpgradeableInitializedIterator{contract: _OwnableUpgradeable.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_OwnableUpgradeable *OwnableUpgradeableFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *OwnableUpgradeableInitialized) (event.Subscription, error) { logs, sub, err := _OwnableUpgradeable.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(OwnableUpgradeableInitialized) if err := _OwnableUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_OwnableUpgradeable *OwnableUpgradeableFilterer) ParseInitialized(log types.Log) (*OwnableUpgradeableInitialized, error) { event := new(OwnableUpgradeableInitialized) if err := _OwnableUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // OwnableUpgradeableOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the OwnableUpgradeable contract. type OwnableUpgradeableOwnershipTransferredIterator struct { Event *OwnableUpgradeableOwnershipTransferred // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *OwnableUpgradeableOwnershipTransferredIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(OwnableUpgradeableOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(OwnableUpgradeableOwnershipTransferred) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *OwnableUpgradeableOwnershipTransferredIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *OwnableUpgradeableOwnershipTransferredIterator) Close() error { it.sub.Unsubscribe() return nil } // OwnableUpgradeableOwnershipTransferred represents a OwnershipTransferred event raised by the OwnableUpgradeable contract. type OwnableUpgradeableOwnershipTransferred struct { PreviousOwner common.Address NewOwner common.Address Raw types.Log // Blockchain specific contextual infos } // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_OwnableUpgradeable *OwnableUpgradeableFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*OwnableUpgradeableOwnershipTransferredIterator, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _OwnableUpgradeable.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return &OwnableUpgradeableOwnershipTransferredIterator{contract: _OwnableUpgradeable.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil } // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_OwnableUpgradeable *OwnableUpgradeableFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *OwnableUpgradeableOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { var previousOwnerRule []interface{} for _, previousOwnerItem := range previousOwner { previousOwnerRule = append(previousOwnerRule, previousOwnerItem) } var newOwnerRule []interface{} for _, newOwnerItem := range newOwner { newOwnerRule = append(newOwnerRule, newOwnerItem) } logs, sub, err := _OwnableUpgradeable.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(OwnableUpgradeableOwnershipTransferred) if err := _OwnableUpgradeable.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. // // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) func (_OwnableUpgradeable *OwnableUpgradeableFilterer) ParseOwnershipTransferred(log types.Log) (*OwnableUpgradeableOwnershipTransferred, error) { event := new(OwnableUpgradeableOwnershipTransferred) if err := _OwnableUpgradeable.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { return nil, err } event.Raw = log return event, nil } // ReceiptLibMetaData contains all meta data concerning the ReceiptLib contract. var ReceiptLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c7c1f0539c867ef5127b69c1a3a5a5b3bed1bacc8f0f308cf960f34ee7a1e43664736f6c63430008110033", } // ReceiptLibABI is the input ABI used to generate the binding from. // Deprecated: Use ReceiptLibMetaData.ABI instead. var ReceiptLibABI = ReceiptLibMetaData.ABI // ReceiptLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use ReceiptLibMetaData.Bin instead. var ReceiptLibBin = ReceiptLibMetaData.Bin // DeployReceiptLib deploys a new Ethereum contract, binding an instance of ReceiptLib to it. func DeployReceiptLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ReceiptLib, error) { parsed, err := ReceiptLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(ReceiptLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &ReceiptLib{ReceiptLibCaller: ReceiptLibCaller{contract: contract}, ReceiptLibTransactor: ReceiptLibTransactor{contract: contract}, ReceiptLibFilterer: ReceiptLibFilterer{contract: contract}}, nil } // ReceiptLib is an auto generated Go binding around an Ethereum contract. type ReceiptLib struct { ReceiptLibCaller // Read-only binding to the contract ReceiptLibTransactor // Write-only binding to the contract ReceiptLibFilterer // Log filterer for contract events } // ReceiptLibCaller is an auto generated read-only Go binding around an Ethereum contract. type ReceiptLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ReceiptLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type ReceiptLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ReceiptLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ReceiptLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ReceiptLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ReceiptLibSession struct { Contract *ReceiptLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ReceiptLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ReceiptLibCallerSession struct { Contract *ReceiptLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ReceiptLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ReceiptLibTransactorSession struct { Contract *ReceiptLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ReceiptLibRaw is an auto generated low-level Go binding around an Ethereum contract. type ReceiptLibRaw struct { Contract *ReceiptLib // Generic contract binding to access the raw methods on } // ReceiptLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ReceiptLibCallerRaw struct { Contract *ReceiptLibCaller // Generic read-only contract binding to access the raw methods on } // ReceiptLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ReceiptLibTransactorRaw struct { Contract *ReceiptLibTransactor // Generic write-only contract binding to access the raw methods on } // NewReceiptLib creates a new instance of ReceiptLib, bound to a specific deployed contract. func NewReceiptLib(address common.Address, backend bind.ContractBackend) (*ReceiptLib, error) { contract, err := bindReceiptLib(address, backend, backend, backend) if err != nil { return nil, err } return &ReceiptLib{ReceiptLibCaller: ReceiptLibCaller{contract: contract}, ReceiptLibTransactor: ReceiptLibTransactor{contract: contract}, ReceiptLibFilterer: ReceiptLibFilterer{contract: contract}}, nil } // NewReceiptLibCaller creates a new read-only instance of ReceiptLib, bound to a specific deployed contract. func NewReceiptLibCaller(address common.Address, caller bind.ContractCaller) (*ReceiptLibCaller, error) { contract, err := bindReceiptLib(address, caller, nil, nil) if err != nil { return nil, err } return &ReceiptLibCaller{contract: contract}, nil } // NewReceiptLibTransactor creates a new write-only instance of ReceiptLib, bound to a specific deployed contract. func NewReceiptLibTransactor(address common.Address, transactor bind.ContractTransactor) (*ReceiptLibTransactor, error) { contract, err := bindReceiptLib(address, nil, transactor, nil) if err != nil { return nil, err } return &ReceiptLibTransactor{contract: contract}, nil } // NewReceiptLibFilterer creates a new log filterer instance of ReceiptLib, bound to a specific deployed contract. func NewReceiptLibFilterer(address common.Address, filterer bind.ContractFilterer) (*ReceiptLibFilterer, error) { contract, err := bindReceiptLib(address, nil, nil, filterer) if err != nil { return nil, err } return &ReceiptLibFilterer{contract: contract}, nil } // bindReceiptLib binds a generic wrapper to an already deployed contract. func bindReceiptLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ReceiptLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ReceiptLib *ReceiptLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ReceiptLib.Contract.ReceiptLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ReceiptLib *ReceiptLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ReceiptLib.Contract.ReceiptLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ReceiptLib *ReceiptLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ReceiptLib.Contract.ReceiptLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ReceiptLib *ReceiptLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ReceiptLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ReceiptLib *ReceiptLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ReceiptLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ReceiptLib *ReceiptLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ReceiptLib.Contract.contract.Transact(opts, method, params...) } // ReentrancyGuardUpgradeableMetaData contains all meta data concerning the ReentrancyGuardUpgradeable contract. var ReentrancyGuardUpgradeableMetaData = &bind.MetaData{ ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"}]", } // ReentrancyGuardUpgradeableABI is the input ABI used to generate the binding from. // Deprecated: Use ReentrancyGuardUpgradeableMetaData.ABI instead. var ReentrancyGuardUpgradeableABI = ReentrancyGuardUpgradeableMetaData.ABI // ReentrancyGuardUpgradeable is an auto generated Go binding around an Ethereum contract. type ReentrancyGuardUpgradeable struct { ReentrancyGuardUpgradeableCaller // Read-only binding to the contract ReentrancyGuardUpgradeableTransactor // Write-only binding to the contract ReentrancyGuardUpgradeableFilterer // Log filterer for contract events } // ReentrancyGuardUpgradeableCaller is an auto generated read-only Go binding around an Ethereum contract. type ReentrancyGuardUpgradeableCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ReentrancyGuardUpgradeableTransactor is an auto generated write-only Go binding around an Ethereum contract. type ReentrancyGuardUpgradeableTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ReentrancyGuardUpgradeableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type ReentrancyGuardUpgradeableFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // ReentrancyGuardUpgradeableSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type ReentrancyGuardUpgradeableSession struct { Contract *ReentrancyGuardUpgradeable // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ReentrancyGuardUpgradeableCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type ReentrancyGuardUpgradeableCallerSession struct { Contract *ReentrancyGuardUpgradeableCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // ReentrancyGuardUpgradeableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type ReentrancyGuardUpgradeableTransactorSession struct { Contract *ReentrancyGuardUpgradeableTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // ReentrancyGuardUpgradeableRaw is an auto generated low-level Go binding around an Ethereum contract. type ReentrancyGuardUpgradeableRaw struct { Contract *ReentrancyGuardUpgradeable // Generic contract binding to access the raw methods on } // ReentrancyGuardUpgradeableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type ReentrancyGuardUpgradeableCallerRaw struct { Contract *ReentrancyGuardUpgradeableCaller // Generic read-only contract binding to access the raw methods on } // ReentrancyGuardUpgradeableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type ReentrancyGuardUpgradeableTransactorRaw struct { Contract *ReentrancyGuardUpgradeableTransactor // Generic write-only contract binding to access the raw methods on } // NewReentrancyGuardUpgradeable creates a new instance of ReentrancyGuardUpgradeable, bound to a specific deployed contract. func NewReentrancyGuardUpgradeable(address common.Address, backend bind.ContractBackend) (*ReentrancyGuardUpgradeable, error) { contract, err := bindReentrancyGuardUpgradeable(address, backend, backend, backend) if err != nil { return nil, err } return &ReentrancyGuardUpgradeable{ReentrancyGuardUpgradeableCaller: ReentrancyGuardUpgradeableCaller{contract: contract}, ReentrancyGuardUpgradeableTransactor: ReentrancyGuardUpgradeableTransactor{contract: contract}, ReentrancyGuardUpgradeableFilterer: ReentrancyGuardUpgradeableFilterer{contract: contract}}, nil } // NewReentrancyGuardUpgradeableCaller creates a new read-only instance of ReentrancyGuardUpgradeable, bound to a specific deployed contract. func NewReentrancyGuardUpgradeableCaller(address common.Address, caller bind.ContractCaller) (*ReentrancyGuardUpgradeableCaller, error) { contract, err := bindReentrancyGuardUpgradeable(address, caller, nil, nil) if err != nil { return nil, err } return &ReentrancyGuardUpgradeableCaller{contract: contract}, nil } // NewReentrancyGuardUpgradeableTransactor creates a new write-only instance of ReentrancyGuardUpgradeable, bound to a specific deployed contract. func NewReentrancyGuardUpgradeableTransactor(address common.Address, transactor bind.ContractTransactor) (*ReentrancyGuardUpgradeableTransactor, error) { contract, err := bindReentrancyGuardUpgradeable(address, nil, transactor, nil) if err != nil { return nil, err } return &ReentrancyGuardUpgradeableTransactor{contract: contract}, nil } // NewReentrancyGuardUpgradeableFilterer creates a new log filterer instance of ReentrancyGuardUpgradeable, bound to a specific deployed contract. func NewReentrancyGuardUpgradeableFilterer(address common.Address, filterer bind.ContractFilterer) (*ReentrancyGuardUpgradeableFilterer, error) { contract, err := bindReentrancyGuardUpgradeable(address, nil, nil, filterer) if err != nil { return nil, err } return &ReentrancyGuardUpgradeableFilterer{contract: contract}, nil } // bindReentrancyGuardUpgradeable binds a generic wrapper to an already deployed contract. func bindReentrancyGuardUpgradeable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := ReentrancyGuardUpgradeableMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ReentrancyGuardUpgradeable.Contract.ReentrancyGuardUpgradeableCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ReentrancyGuardUpgradeable.Contract.ReentrancyGuardUpgradeableTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ReentrancyGuardUpgradeable.Contract.ReentrancyGuardUpgradeableTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _ReentrancyGuardUpgradeable.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _ReentrancyGuardUpgradeable.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _ReentrancyGuardUpgradeable.Contract.contract.Transact(opts, method, params...) } // ReentrancyGuardUpgradeableInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the ReentrancyGuardUpgradeable contract. type ReentrancyGuardUpgradeableInitializedIterator struct { Event *ReentrancyGuardUpgradeableInitialized // Event containing the contract specifics and raw log contract *bind.BoundContract // Generic contract to use for unpacking event data event string // Event name to use for unpacking event data logs chan types.Log // Log channel receiving the found contract events sub ethereum.Subscription // Subscription for errors, completion and termination done bool // Whether the subscription completed delivering logs fail error // Occurred error to stop iteration } // Next advances the iterator to the subsequent event, returning whether there // are any more events found. In case of a retrieval or parsing error, false is // returned and Error() can be queried for the exact failure. func (it *ReentrancyGuardUpgradeableInitializedIterator) Next() bool { // If the iterator failed, stop iterating if it.fail != nil { return false } // If the iterator completed, deliver directly whatever's available if it.done { select { case log := <-it.logs: it.Event = new(ReentrancyGuardUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true default: return false } } // Iterator still in progress, wait for either a data or an error event select { case log := <-it.logs: it.Event = new(ReentrancyGuardUpgradeableInitialized) if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { it.fail = err return false } it.Event.Raw = log return true case err := <-it.sub.Err(): it.done = true it.fail = err return it.Next() } } // Error returns any retrieval or parsing error occurred during filtering. func (it *ReentrancyGuardUpgradeableInitializedIterator) Error() error { return it.fail } // Close terminates the iteration process, releasing any pending underlying // resources. func (it *ReentrancyGuardUpgradeableInitializedIterator) Close() error { it.sub.Unsubscribe() return nil } // ReentrancyGuardUpgradeableInitialized represents a Initialized event raised by the ReentrancyGuardUpgradeable contract. type ReentrancyGuardUpgradeableInitialized struct { Version uint8 Raw types.Log // Blockchain specific contextual infos } // FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableFilterer) FilterInitialized(opts *bind.FilterOpts) (*ReentrancyGuardUpgradeableInitializedIterator, error) { logs, sub, err := _ReentrancyGuardUpgradeable.contract.FilterLogs(opts, "Initialized") if err != nil { return nil, err } return &ReentrancyGuardUpgradeableInitializedIterator{contract: _ReentrancyGuardUpgradeable.contract, event: "Initialized", logs: logs, sub: sub}, nil } // WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *ReentrancyGuardUpgradeableInitialized) (event.Subscription, error) { logs, sub, err := _ReentrancyGuardUpgradeable.contract.WatchLogs(opts, "Initialized") if err != nil { return nil, err } return event.NewSubscription(func(quit <-chan struct{}) error { defer sub.Unsubscribe() for { select { case log := <-logs: // New log arrived, parse the event and forward to the user event := new(ReentrancyGuardUpgradeableInitialized) if err := _ReentrancyGuardUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return err } event.Raw = log select { case sink <- event: case err := <-sub.Err(): return err case <-quit: return nil } case err := <-sub.Err(): return err case <-quit: return nil } } }), nil } // ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498. // // Solidity: event Initialized(uint8 version) func (_ReentrancyGuardUpgradeable *ReentrancyGuardUpgradeableFilterer) ParseInitialized(log types.Log) (*ReentrancyGuardUpgradeableInitialized, error) { event := new(ReentrancyGuardUpgradeableInitialized) if err := _ReentrancyGuardUpgradeable.contract.UnpackLog(event, "Initialized", log); err != nil { return nil, err } event.Raw = log return event, nil } // RequestLibMetaData contains all meta data concerning the RequestLib contract. var RequestLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122082bc7e8993995fa85841a6fbb80a916761b7852652ac0aa0aa811743d098793764736f6c63430008110033", } // RequestLibABI is the input ABI used to generate the binding from. // Deprecated: Use RequestLibMetaData.ABI instead. var RequestLibABI = RequestLibMetaData.ABI // RequestLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use RequestLibMetaData.Bin instead. var RequestLibBin = RequestLibMetaData.Bin // DeployRequestLib deploys a new Ethereum contract, binding an instance of RequestLib to it. func DeployRequestLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *RequestLib, error) { parsed, err := RequestLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(RequestLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &RequestLib{RequestLibCaller: RequestLibCaller{contract: contract}, RequestLibTransactor: RequestLibTransactor{contract: contract}, RequestLibFilterer: RequestLibFilterer{contract: contract}}, nil } // RequestLib is an auto generated Go binding around an Ethereum contract. type RequestLib struct { RequestLibCaller // Read-only binding to the contract RequestLibTransactor // Write-only binding to the contract RequestLibFilterer // Log filterer for contract events } // RequestLibCaller is an auto generated read-only Go binding around an Ethereum contract. type RequestLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // RequestLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type RequestLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // RequestLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type RequestLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // RequestLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type RequestLibSession struct { Contract *RequestLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // RequestLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type RequestLibCallerSession struct { Contract *RequestLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // RequestLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type RequestLibTransactorSession struct { Contract *RequestLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // RequestLibRaw is an auto generated low-level Go binding around an Ethereum contract. type RequestLibRaw struct { Contract *RequestLib // Generic contract binding to access the raw methods on } // RequestLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type RequestLibCallerRaw struct { Contract *RequestLibCaller // Generic read-only contract binding to access the raw methods on } // RequestLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type RequestLibTransactorRaw struct { Contract *RequestLibTransactor // Generic write-only contract binding to access the raw methods on } // NewRequestLib creates a new instance of RequestLib, bound to a specific deployed contract. func NewRequestLib(address common.Address, backend bind.ContractBackend) (*RequestLib, error) { contract, err := bindRequestLib(address, backend, backend, backend) if err != nil { return nil, err } return &RequestLib{RequestLibCaller: RequestLibCaller{contract: contract}, RequestLibTransactor: RequestLibTransactor{contract: contract}, RequestLibFilterer: RequestLibFilterer{contract: contract}}, nil } // NewRequestLibCaller creates a new read-only instance of RequestLib, bound to a specific deployed contract. func NewRequestLibCaller(address common.Address, caller bind.ContractCaller) (*RequestLibCaller, error) { contract, err := bindRequestLib(address, caller, nil, nil) if err != nil { return nil, err } return &RequestLibCaller{contract: contract}, nil } // NewRequestLibTransactor creates a new write-only instance of RequestLib, bound to a specific deployed contract. func NewRequestLibTransactor(address common.Address, transactor bind.ContractTransactor) (*RequestLibTransactor, error) { contract, err := bindRequestLib(address, nil, transactor, nil) if err != nil { return nil, err } return &RequestLibTransactor{contract: contract}, nil } // NewRequestLibFilterer creates a new log filterer instance of RequestLib, bound to a specific deployed contract. func NewRequestLibFilterer(address common.Address, filterer bind.ContractFilterer) (*RequestLibFilterer, error) { contract, err := bindRequestLib(address, nil, nil, filterer) if err != nil { return nil, err } return &RequestLibFilterer{contract: contract}, nil } // bindRequestLib binds a generic wrapper to an already deployed contract. func bindRequestLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := RequestLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_RequestLib *RequestLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _RequestLib.Contract.RequestLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_RequestLib *RequestLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _RequestLib.Contract.RequestLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_RequestLib *RequestLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _RequestLib.Contract.RequestLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_RequestLib *RequestLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _RequestLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_RequestLib *RequestLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _RequestLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_RequestLib *RequestLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _RequestLib.Contract.contract.Transact(opts, method, params...) } // SafeCallMetaData contains all meta data concerning the SafeCall contract. var SafeCallMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122026993598efe391f3d1b5035ebfe33a02cab0209ea9dbc89ebf146b3e4d45ec3f64736f6c63430008110033", } // SafeCallABI is the input ABI used to generate the binding from. // Deprecated: Use SafeCallMetaData.ABI instead. var SafeCallABI = SafeCallMetaData.ABI // SafeCallBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use SafeCallMetaData.Bin instead. var SafeCallBin = SafeCallMetaData.Bin // DeploySafeCall deploys a new Ethereum contract, binding an instance of SafeCall to it. func DeploySafeCall(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *SafeCall, error) { parsed, err := SafeCallMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(SafeCallBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &SafeCall{SafeCallCaller: SafeCallCaller{contract: contract}, SafeCallTransactor: SafeCallTransactor{contract: contract}, SafeCallFilterer: SafeCallFilterer{contract: contract}}, nil } // SafeCall is an auto generated Go binding around an Ethereum contract. type SafeCall struct { SafeCallCaller // Read-only binding to the contract SafeCallTransactor // Write-only binding to the contract SafeCallFilterer // Log filterer for contract events } // SafeCallCaller is an auto generated read-only Go binding around an Ethereum contract. type SafeCallCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SafeCallTransactor is an auto generated write-only Go binding around an Ethereum contract. type SafeCallTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SafeCallFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type SafeCallFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SafeCallSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type SafeCallSession struct { Contract *SafeCall // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // SafeCallCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type SafeCallCallerSession struct { Contract *SafeCallCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // SafeCallTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type SafeCallTransactorSession struct { Contract *SafeCallTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // SafeCallRaw is an auto generated low-level Go binding around an Ethereum contract. type SafeCallRaw struct { Contract *SafeCall // Generic contract binding to access the raw methods on } // SafeCallCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type SafeCallCallerRaw struct { Contract *SafeCallCaller // Generic read-only contract binding to access the raw methods on } // SafeCallTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type SafeCallTransactorRaw struct { Contract *SafeCallTransactor // Generic write-only contract binding to access the raw methods on } // NewSafeCall creates a new instance of SafeCall, bound to a specific deployed contract. func NewSafeCall(address common.Address, backend bind.ContractBackend) (*SafeCall, error) { contract, err := bindSafeCall(address, backend, backend, backend) if err != nil { return nil, err } return &SafeCall{SafeCallCaller: SafeCallCaller{contract: contract}, SafeCallTransactor: SafeCallTransactor{contract: contract}, SafeCallFilterer: SafeCallFilterer{contract: contract}}, nil } // NewSafeCallCaller creates a new read-only instance of SafeCall, bound to a specific deployed contract. func NewSafeCallCaller(address common.Address, caller bind.ContractCaller) (*SafeCallCaller, error) { contract, err := bindSafeCall(address, caller, nil, nil) if err != nil { return nil, err } return &SafeCallCaller{contract: contract}, nil } // NewSafeCallTransactor creates a new write-only instance of SafeCall, bound to a specific deployed contract. func NewSafeCallTransactor(address common.Address, transactor bind.ContractTransactor) (*SafeCallTransactor, error) { contract, err := bindSafeCall(address, nil, transactor, nil) if err != nil { return nil, err } return &SafeCallTransactor{contract: contract}, nil } // NewSafeCallFilterer creates a new log filterer instance of SafeCall, bound to a specific deployed contract. func NewSafeCallFilterer(address common.Address, filterer bind.ContractFilterer) (*SafeCallFilterer, error) { contract, err := bindSafeCall(address, nil, nil, filterer) if err != nil { return nil, err } return &SafeCallFilterer{contract: contract}, nil } // bindSafeCall binds a generic wrapper to an already deployed contract. func bindSafeCall(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := SafeCallMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_SafeCall *SafeCallRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _SafeCall.Contract.SafeCallCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_SafeCall *SafeCallRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _SafeCall.Contract.SafeCallTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_SafeCall *SafeCallRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _SafeCall.Contract.SafeCallTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_SafeCall *SafeCallCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _SafeCall.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_SafeCall *SafeCallTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _SafeCall.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_SafeCall *SafeCallTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _SafeCall.Contract.contract.Transact(opts, method, params...) } // SafeCastMetaData contains all meta data concerning the SafeCast contract. var SafeCastMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220879fa29bc280b47a3a36c631d115818d12380130c962c01514c5a169f32381e264736f6c63430008110033", } // SafeCastABI is the input ABI used to generate the binding from. // Deprecated: Use SafeCastMetaData.ABI instead. var SafeCastABI = SafeCastMetaData.ABI // SafeCastBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use SafeCastMetaData.Bin instead. var SafeCastBin = SafeCastMetaData.Bin // DeploySafeCast deploys a new Ethereum contract, binding an instance of SafeCast to it. func DeploySafeCast(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *SafeCast, error) { parsed, err := SafeCastMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(SafeCastBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &SafeCast{SafeCastCaller: SafeCastCaller{contract: contract}, SafeCastTransactor: SafeCastTransactor{contract: contract}, SafeCastFilterer: SafeCastFilterer{contract: contract}}, nil } // SafeCast is an auto generated Go binding around an Ethereum contract. type SafeCast struct { SafeCastCaller // Read-only binding to the contract SafeCastTransactor // Write-only binding to the contract SafeCastFilterer // Log filterer for contract events } // SafeCastCaller is an auto generated read-only Go binding around an Ethereum contract. type SafeCastCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SafeCastTransactor is an auto generated write-only Go binding around an Ethereum contract. type SafeCastTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SafeCastFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type SafeCastFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SafeCastSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type SafeCastSession struct { Contract *SafeCast // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // SafeCastCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type SafeCastCallerSession struct { Contract *SafeCastCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // SafeCastTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type SafeCastTransactorSession struct { Contract *SafeCastTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // SafeCastRaw is an auto generated low-level Go binding around an Ethereum contract. type SafeCastRaw struct { Contract *SafeCast // Generic contract binding to access the raw methods on } // SafeCastCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type SafeCastCallerRaw struct { Contract *SafeCastCaller // Generic read-only contract binding to access the raw methods on } // SafeCastTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type SafeCastTransactorRaw struct { Contract *SafeCastTransactor // Generic write-only contract binding to access the raw methods on } // NewSafeCast creates a new instance of SafeCast, bound to a specific deployed contract. func NewSafeCast(address common.Address, backend bind.ContractBackend) (*SafeCast, error) { contract, err := bindSafeCast(address, backend, backend, backend) if err != nil { return nil, err } return &SafeCast{SafeCastCaller: SafeCastCaller{contract: contract}, SafeCastTransactor: SafeCastTransactor{contract: contract}, SafeCastFilterer: SafeCastFilterer{contract: contract}}, nil } // NewSafeCastCaller creates a new read-only instance of SafeCast, bound to a specific deployed contract. func NewSafeCastCaller(address common.Address, caller bind.ContractCaller) (*SafeCastCaller, error) { contract, err := bindSafeCast(address, caller, nil, nil) if err != nil { return nil, err } return &SafeCastCaller{contract: contract}, nil } // NewSafeCastTransactor creates a new write-only instance of SafeCast, bound to a specific deployed contract. func NewSafeCastTransactor(address common.Address, transactor bind.ContractTransactor) (*SafeCastTransactor, error) { contract, err := bindSafeCast(address, nil, transactor, nil) if err != nil { return nil, err } return &SafeCastTransactor{contract: contract}, nil } // NewSafeCastFilterer creates a new log filterer instance of SafeCast, bound to a specific deployed contract. func NewSafeCastFilterer(address common.Address, filterer bind.ContractFilterer) (*SafeCastFilterer, error) { contract, err := bindSafeCast(address, nil, nil, filterer) if err != nil { return nil, err } return &SafeCastFilterer{contract: contract}, nil } // bindSafeCast binds a generic wrapper to an already deployed contract. func bindSafeCast(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := SafeCastMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_SafeCast *SafeCastRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _SafeCast.Contract.SafeCastCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_SafeCast *SafeCastRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _SafeCast.Contract.SafeCastTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_SafeCast *SafeCastRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _SafeCast.Contract.SafeCastTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_SafeCast *SafeCastCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _SafeCast.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_SafeCast *SafeCastTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _SafeCast.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_SafeCast *SafeCastTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _SafeCast.Contract.contract.Transact(opts, method, params...) } // SnapshotLibMetaData contains all meta data concerning the SnapshotLib contract. var SnapshotLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122085d25746d588d140d2866dc53710c4e81db5ffcedbd15ccfb26483b3748f54ba64736f6c63430008110033", } // SnapshotLibABI is the input ABI used to generate the binding from. // Deprecated: Use SnapshotLibMetaData.ABI instead. var SnapshotLibABI = SnapshotLibMetaData.ABI // SnapshotLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use SnapshotLibMetaData.Bin instead. var SnapshotLibBin = SnapshotLibMetaData.Bin // DeploySnapshotLib deploys a new Ethereum contract, binding an instance of SnapshotLib to it. func DeploySnapshotLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *SnapshotLib, error) { parsed, err := SnapshotLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(SnapshotLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &SnapshotLib{SnapshotLibCaller: SnapshotLibCaller{contract: contract}, SnapshotLibTransactor: SnapshotLibTransactor{contract: contract}, SnapshotLibFilterer: SnapshotLibFilterer{contract: contract}}, nil } // SnapshotLib is an auto generated Go binding around an Ethereum contract. type SnapshotLib struct { SnapshotLibCaller // Read-only binding to the contract SnapshotLibTransactor // Write-only binding to the contract SnapshotLibFilterer // Log filterer for contract events } // SnapshotLibCaller is an auto generated read-only Go binding around an Ethereum contract. type SnapshotLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SnapshotLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type SnapshotLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SnapshotLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type SnapshotLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // SnapshotLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type SnapshotLibSession struct { Contract *SnapshotLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // SnapshotLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type SnapshotLibCallerSession struct { Contract *SnapshotLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // SnapshotLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type SnapshotLibTransactorSession struct { Contract *SnapshotLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // SnapshotLibRaw is an auto generated low-level Go binding around an Ethereum contract. type SnapshotLibRaw struct { Contract *SnapshotLib // Generic contract binding to access the raw methods on } // SnapshotLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type SnapshotLibCallerRaw struct { Contract *SnapshotLibCaller // Generic read-only contract binding to access the raw methods on } // SnapshotLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type SnapshotLibTransactorRaw struct { Contract *SnapshotLibTransactor // Generic write-only contract binding to access the raw methods on } // NewSnapshotLib creates a new instance of SnapshotLib, bound to a specific deployed contract. func NewSnapshotLib(address common.Address, backend bind.ContractBackend) (*SnapshotLib, error) { contract, err := bindSnapshotLib(address, backend, backend, backend) if err != nil { return nil, err } return &SnapshotLib{SnapshotLibCaller: SnapshotLibCaller{contract: contract}, SnapshotLibTransactor: SnapshotLibTransactor{contract: contract}, SnapshotLibFilterer: SnapshotLibFilterer{contract: contract}}, nil } // NewSnapshotLibCaller creates a new read-only instance of SnapshotLib, bound to a specific deployed contract. func NewSnapshotLibCaller(address common.Address, caller bind.ContractCaller) (*SnapshotLibCaller, error) { contract, err := bindSnapshotLib(address, caller, nil, nil) if err != nil { return nil, err } return &SnapshotLibCaller{contract: contract}, nil } // NewSnapshotLibTransactor creates a new write-only instance of SnapshotLib, bound to a specific deployed contract. func NewSnapshotLibTransactor(address common.Address, transactor bind.ContractTransactor) (*SnapshotLibTransactor, error) { contract, err := bindSnapshotLib(address, nil, transactor, nil) if err != nil { return nil, err } return &SnapshotLibTransactor{contract: contract}, nil } // NewSnapshotLibFilterer creates a new log filterer instance of SnapshotLib, bound to a specific deployed contract. func NewSnapshotLibFilterer(address common.Address, filterer bind.ContractFilterer) (*SnapshotLibFilterer, error) { contract, err := bindSnapshotLib(address, nil, nil, filterer) if err != nil { return nil, err } return &SnapshotLibFilterer{contract: contract}, nil } // bindSnapshotLib binds a generic wrapper to an already deployed contract. func bindSnapshotLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := SnapshotLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_SnapshotLib *SnapshotLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _SnapshotLib.Contract.SnapshotLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_SnapshotLib *SnapshotLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _SnapshotLib.Contract.SnapshotLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_SnapshotLib *SnapshotLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _SnapshotLib.Contract.SnapshotLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_SnapshotLib *SnapshotLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _SnapshotLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_SnapshotLib *SnapshotLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _SnapshotLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_SnapshotLib *SnapshotLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _SnapshotLib.Contract.contract.Transact(opts, method, params...) } // StateLibMetaData contains all meta data concerning the StateLib contract. var StateLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220511039e934cbbd74b36fc892602fbfa971649f06a9162e5cf7b7e8de456cb90c64736f6c63430008110033", } // StateLibABI is the input ABI used to generate the binding from. // Deprecated: Use StateLibMetaData.ABI instead. var StateLibABI = StateLibMetaData.ABI // StateLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use StateLibMetaData.Bin instead. var StateLibBin = StateLibMetaData.Bin // DeployStateLib deploys a new Ethereum contract, binding an instance of StateLib to it. func DeployStateLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *StateLib, error) { parsed, err := StateLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(StateLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &StateLib{StateLibCaller: StateLibCaller{contract: contract}, StateLibTransactor: StateLibTransactor{contract: contract}, StateLibFilterer: StateLibFilterer{contract: contract}}, nil } // StateLib is an auto generated Go binding around an Ethereum contract. type StateLib struct { StateLibCaller // Read-only binding to the contract StateLibTransactor // Write-only binding to the contract StateLibFilterer // Log filterer for contract events } // StateLibCaller is an auto generated read-only Go binding around an Ethereum contract. type StateLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // StateLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type StateLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // StateLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type StateLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // StateLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type StateLibSession struct { Contract *StateLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // StateLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type StateLibCallerSession struct { Contract *StateLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // StateLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type StateLibTransactorSession struct { Contract *StateLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // StateLibRaw is an auto generated low-level Go binding around an Ethereum contract. type StateLibRaw struct { Contract *StateLib // Generic contract binding to access the raw methods on } // StateLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type StateLibCallerRaw struct { Contract *StateLibCaller // Generic read-only contract binding to access the raw methods on } // StateLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type StateLibTransactorRaw struct { Contract *StateLibTransactor // Generic write-only contract binding to access the raw methods on } // NewStateLib creates a new instance of StateLib, bound to a specific deployed contract. func NewStateLib(address common.Address, backend bind.ContractBackend) (*StateLib, error) { contract, err := bindStateLib(address, backend, backend, backend) if err != nil { return nil, err } return &StateLib{StateLibCaller: StateLibCaller{contract: contract}, StateLibTransactor: StateLibTransactor{contract: contract}, StateLibFilterer: StateLibFilterer{contract: contract}}, nil } // NewStateLibCaller creates a new read-only instance of StateLib, bound to a specific deployed contract. func NewStateLibCaller(address common.Address, caller bind.ContractCaller) (*StateLibCaller, error) { contract, err := bindStateLib(address, caller, nil, nil) if err != nil { return nil, err } return &StateLibCaller{contract: contract}, nil } // NewStateLibTransactor creates a new write-only instance of StateLib, bound to a specific deployed contract. func NewStateLibTransactor(address common.Address, transactor bind.ContractTransactor) (*StateLibTransactor, error) { contract, err := bindStateLib(address, nil, transactor, nil) if err != nil { return nil, err } return &StateLibTransactor{contract: contract}, nil } // NewStateLibFilterer creates a new log filterer instance of StateLib, bound to a specific deployed contract. func NewStateLibFilterer(address common.Address, filterer bind.ContractFilterer) (*StateLibFilterer, error) { contract, err := bindStateLib(address, nil, nil, filterer) if err != nil { return nil, err } return &StateLibFilterer{contract: contract}, nil } // bindStateLib binds a generic wrapper to an already deployed contract. func bindStateLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := StateLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_StateLib *StateLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _StateLib.Contract.StateLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_StateLib *StateLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _StateLib.Contract.StateLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_StateLib *StateLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _StateLib.Contract.StateLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_StateLib *StateLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _StateLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_StateLib *StateLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _StateLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_StateLib *StateLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _StateLib.Contract.contract.Transact(opts, method, params...) } // StructureUtilsMetaData contains all meta data concerning the StructureUtils contract. var StructureUtilsMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ab26f5aab55b088d8ef220cb44aa97b888cdd32b5800194dd433dce1847c7ec464736f6c63430008110033", } // StructureUtilsABI is the input ABI used to generate the binding from. // Deprecated: Use StructureUtilsMetaData.ABI instead. var StructureUtilsABI = StructureUtilsMetaData.ABI // StructureUtilsBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use StructureUtilsMetaData.Bin instead. var StructureUtilsBin = StructureUtilsMetaData.Bin // DeployStructureUtils deploys a new Ethereum contract, binding an instance of StructureUtils to it. func DeployStructureUtils(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *StructureUtils, error) { parsed, err := StructureUtilsMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(StructureUtilsBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &StructureUtils{StructureUtilsCaller: StructureUtilsCaller{contract: contract}, StructureUtilsTransactor: StructureUtilsTransactor{contract: contract}, StructureUtilsFilterer: StructureUtilsFilterer{contract: contract}}, nil } // StructureUtils is an auto generated Go binding around an Ethereum contract. type StructureUtils struct { StructureUtilsCaller // Read-only binding to the contract StructureUtilsTransactor // Write-only binding to the contract StructureUtilsFilterer // Log filterer for contract events } // StructureUtilsCaller is an auto generated read-only Go binding around an Ethereum contract. type StructureUtilsCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // StructureUtilsTransactor is an auto generated write-only Go binding around an Ethereum contract. type StructureUtilsTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // StructureUtilsFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type StructureUtilsFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // StructureUtilsSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type StructureUtilsSession struct { Contract *StructureUtils // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // StructureUtilsCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type StructureUtilsCallerSession struct { Contract *StructureUtilsCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // StructureUtilsTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type StructureUtilsTransactorSession struct { Contract *StructureUtilsTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // StructureUtilsRaw is an auto generated low-level Go binding around an Ethereum contract. type StructureUtilsRaw struct { Contract *StructureUtils // Generic contract binding to access the raw methods on } // StructureUtilsCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type StructureUtilsCallerRaw struct { Contract *StructureUtilsCaller // Generic read-only contract binding to access the raw methods on } // StructureUtilsTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type StructureUtilsTransactorRaw struct { Contract *StructureUtilsTransactor // Generic write-only contract binding to access the raw methods on } // NewStructureUtils creates a new instance of StructureUtils, bound to a specific deployed contract. func NewStructureUtils(address common.Address, backend bind.ContractBackend) (*StructureUtils, error) { contract, err := bindStructureUtils(address, backend, backend, backend) if err != nil { return nil, err } return &StructureUtils{StructureUtilsCaller: StructureUtilsCaller{contract: contract}, StructureUtilsTransactor: StructureUtilsTransactor{contract: contract}, StructureUtilsFilterer: StructureUtilsFilterer{contract: contract}}, nil } // NewStructureUtilsCaller creates a new read-only instance of StructureUtils, bound to a specific deployed contract. func NewStructureUtilsCaller(address common.Address, caller bind.ContractCaller) (*StructureUtilsCaller, error) { contract, err := bindStructureUtils(address, caller, nil, nil) if err != nil { return nil, err } return &StructureUtilsCaller{contract: contract}, nil } // NewStructureUtilsTransactor creates a new write-only instance of StructureUtils, bound to a specific deployed contract. func NewStructureUtilsTransactor(address common.Address, transactor bind.ContractTransactor) (*StructureUtilsTransactor, error) { contract, err := bindStructureUtils(address, nil, transactor, nil) if err != nil { return nil, err } return &StructureUtilsTransactor{contract: contract}, nil } // NewStructureUtilsFilterer creates a new log filterer instance of StructureUtils, bound to a specific deployed contract. func NewStructureUtilsFilterer(address common.Address, filterer bind.ContractFilterer) (*StructureUtilsFilterer, error) { contract, err := bindStructureUtils(address, nil, nil, filterer) if err != nil { return nil, err } return &StructureUtilsFilterer{contract: contract}, nil } // bindStructureUtils binds a generic wrapper to an already deployed contract. func bindStructureUtils(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := StructureUtilsMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_StructureUtils *StructureUtilsRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _StructureUtils.Contract.StructureUtilsCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_StructureUtils *StructureUtilsRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _StructureUtils.Contract.StructureUtilsTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_StructureUtils *StructureUtilsRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _StructureUtils.Contract.StructureUtilsTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_StructureUtils *StructureUtilsCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _StructureUtils.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_StructureUtils *StructureUtilsTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _StructureUtils.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_StructureUtils *StructureUtilsTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _StructureUtils.Contract.contract.Transact(opts, method, params...) } // TipsLibMetaData contains all meta data concerning the TipsLib contract. var TipsLibMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220afea53621d6717ff10a392d096cd5ff75481a893bde5c2b45eac2636b3367ddd64736f6c63430008110033", } // TipsLibABI is the input ABI used to generate the binding from. // Deprecated: Use TipsLibMetaData.ABI instead. var TipsLibABI = TipsLibMetaData.ABI // TipsLibBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use TipsLibMetaData.Bin instead. var TipsLibBin = TipsLibMetaData.Bin // DeployTipsLib deploys a new Ethereum contract, binding an instance of TipsLib to it. func DeployTipsLib(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *TipsLib, error) { parsed, err := TipsLibMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(TipsLibBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &TipsLib{TipsLibCaller: TipsLibCaller{contract: contract}, TipsLibTransactor: TipsLibTransactor{contract: contract}, TipsLibFilterer: TipsLibFilterer{contract: contract}}, nil } // TipsLib is an auto generated Go binding around an Ethereum contract. type TipsLib struct { TipsLibCaller // Read-only binding to the contract TipsLibTransactor // Write-only binding to the contract TipsLibFilterer // Log filterer for contract events } // TipsLibCaller is an auto generated read-only Go binding around an Ethereum contract. type TipsLibCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // TipsLibTransactor is an auto generated write-only Go binding around an Ethereum contract. type TipsLibTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // TipsLibFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type TipsLibFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // TipsLibSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type TipsLibSession struct { Contract *TipsLib // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // TipsLibCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type TipsLibCallerSession struct { Contract *TipsLibCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // TipsLibTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type TipsLibTransactorSession struct { Contract *TipsLibTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // TipsLibRaw is an auto generated low-level Go binding around an Ethereum contract. type TipsLibRaw struct { Contract *TipsLib // Generic contract binding to access the raw methods on } // TipsLibCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type TipsLibCallerRaw struct { Contract *TipsLibCaller // Generic read-only contract binding to access the raw methods on } // TipsLibTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type TipsLibTransactorRaw struct { Contract *TipsLibTransactor // Generic write-only contract binding to access the raw methods on } // NewTipsLib creates a new instance of TipsLib, bound to a specific deployed contract. func NewTipsLib(address common.Address, backend bind.ContractBackend) (*TipsLib, error) { contract, err := bindTipsLib(address, backend, backend, backend) if err != nil { return nil, err } return &TipsLib{TipsLibCaller: TipsLibCaller{contract: contract}, TipsLibTransactor: TipsLibTransactor{contract: contract}, TipsLibFilterer: TipsLibFilterer{contract: contract}}, nil } // NewTipsLibCaller creates a new read-only instance of TipsLib, bound to a specific deployed contract. func NewTipsLibCaller(address common.Address, caller bind.ContractCaller) (*TipsLibCaller, error) { contract, err := bindTipsLib(address, caller, nil, nil) if err != nil { return nil, err } return &TipsLibCaller{contract: contract}, nil } // NewTipsLibTransactor creates a new write-only instance of TipsLib, bound to a specific deployed contract. func NewTipsLibTransactor(address common.Address, transactor bind.ContractTransactor) (*TipsLibTransactor, error) { contract, err := bindTipsLib(address, nil, transactor, nil) if err != nil { return nil, err } return &TipsLibTransactor{contract: contract}, nil } // NewTipsLibFilterer creates a new log filterer instance of TipsLib, bound to a specific deployed contract. func NewTipsLibFilterer(address common.Address, filterer bind.ContractFilterer) (*TipsLibFilterer, error) { contract, err := bindTipsLib(address, nil, nil, filterer) if err != nil { return nil, err } return &TipsLibFilterer{contract: contract}, nil } // bindTipsLib binds a generic wrapper to an already deployed contract. func bindTipsLib(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := TipsLibMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_TipsLib *TipsLibRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _TipsLib.Contract.TipsLibCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_TipsLib *TipsLibRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _TipsLib.Contract.TipsLibTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_TipsLib *TipsLibRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _TipsLib.Contract.TipsLibTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_TipsLib *TipsLibCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _TipsLib.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_TipsLib *TipsLibTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _TipsLib.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_TipsLib *TipsLibTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _TipsLib.Contract.contract.Transact(opts, method, params...) } // TypeCastsMetaData contains all meta data concerning the TypeCasts contract. var TypeCastsMetaData = &bind.MetaData{ ABI: "[]", Bin: "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220eb6faabfcd2973da6e8534ba57f40846dd07a4d18b22b0f247d7e45e1d8ea7c564736f6c63430008110033", } // TypeCastsABI is the input ABI used to generate the binding from. // Deprecated: Use TypeCastsMetaData.ABI instead. var TypeCastsABI = TypeCastsMetaData.ABI // TypeCastsBin is the compiled bytecode used for deploying new contracts. // Deprecated: Use TypeCastsMetaData.Bin instead. var TypeCastsBin = TypeCastsMetaData.Bin // DeployTypeCasts deploys a new Ethereum contract, binding an instance of TypeCasts to it. func DeployTypeCasts(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *TypeCasts, error) { parsed, err := TypeCastsMetaData.GetAbi() if err != nil { return common.Address{}, nil, nil, err } if parsed == nil { return common.Address{}, nil, nil, errors.New("GetABI returned nil") } address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(TypeCastsBin), backend) if err != nil { return common.Address{}, nil, nil, err } return address, tx, &TypeCasts{TypeCastsCaller: TypeCastsCaller{contract: contract}, TypeCastsTransactor: TypeCastsTransactor{contract: contract}, TypeCastsFilterer: TypeCastsFilterer{contract: contract}}, nil } // TypeCasts is an auto generated Go binding around an Ethereum contract. type TypeCasts struct { TypeCastsCaller // Read-only binding to the contract TypeCastsTransactor // Write-only binding to the contract TypeCastsFilterer // Log filterer for contract events } // TypeCastsCaller is an auto generated read-only Go binding around an Ethereum contract. type TypeCastsCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // TypeCastsTransactor is an auto generated write-only Go binding around an Ethereum contract. type TypeCastsTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // TypeCastsFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type TypeCastsFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // TypeCastsSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type TypeCastsSession struct { Contract *TypeCasts // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // TypeCastsCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type TypeCastsCallerSession struct { Contract *TypeCastsCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // TypeCastsTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type TypeCastsTransactorSession struct { Contract *TypeCastsTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // TypeCastsRaw is an auto generated low-level Go binding around an Ethereum contract. type TypeCastsRaw struct { Contract *TypeCasts // Generic contract binding to access the raw methods on } // TypeCastsCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type TypeCastsCallerRaw struct { Contract *TypeCastsCaller // Generic read-only contract binding to access the raw methods on } // TypeCastsTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type TypeCastsTransactorRaw struct { Contract *TypeCastsTransactor // Generic write-only contract binding to access the raw methods on } // NewTypeCasts creates a new instance of TypeCasts, bound to a specific deployed contract. func NewTypeCasts(address common.Address, backend bind.ContractBackend) (*TypeCasts, error) { contract, err := bindTypeCasts(address, backend, backend, backend) if err != nil { return nil, err } return &TypeCasts{TypeCastsCaller: TypeCastsCaller{contract: contract}, TypeCastsTransactor: TypeCastsTransactor{contract: contract}, TypeCastsFilterer: TypeCastsFilterer{contract: contract}}, nil } // NewTypeCastsCaller creates a new read-only instance of TypeCasts, bound to a specific deployed contract. func NewTypeCastsCaller(address common.Address, caller bind.ContractCaller) (*TypeCastsCaller, error) { contract, err := bindTypeCasts(address, caller, nil, nil) if err != nil { return nil, err } return &TypeCastsCaller{contract: contract}, nil } // NewTypeCastsTransactor creates a new write-only instance of TypeCasts, bound to a specific deployed contract. func NewTypeCastsTransactor(address common.Address, transactor bind.ContractTransactor) (*TypeCastsTransactor, error) { contract, err := bindTypeCasts(address, nil, transactor, nil) if err != nil { return nil, err } return &TypeCastsTransactor{contract: contract}, nil } // NewTypeCastsFilterer creates a new log filterer instance of TypeCasts, bound to a specific deployed contract. func NewTypeCastsFilterer(address common.Address, filterer bind.ContractFilterer) (*TypeCastsFilterer, error) { contract, err := bindTypeCasts(address, nil, nil, filterer) if err != nil { return nil, err } return &TypeCastsFilterer{contract: contract}, nil } // bindTypeCasts binds a generic wrapper to an already deployed contract. func bindTypeCasts(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := TypeCastsMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_TypeCasts *TypeCastsRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _TypeCasts.Contract.TypeCastsCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_TypeCasts *TypeCastsRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _TypeCasts.Contract.TypeCastsTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_TypeCasts *TypeCastsRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _TypeCasts.Contract.TypeCastsTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_TypeCasts *TypeCastsCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _TypeCasts.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_TypeCasts *TypeCastsTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _TypeCasts.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_TypeCasts *TypeCastsTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _TypeCasts.Contract.contract.Transact(opts, method, params...) } // VersionedMetaData contains all meta data concerning the Versioned contract. var VersionedMetaData = &bind.MetaData{ ABI: "[{\"inputs\":[],\"name\":\"IncorrectVersionLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"versionString\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]", Sigs: map[string]string{ "54fd4d50": "version()", }, } // VersionedABI is the input ABI used to generate the binding from. // Deprecated: Use VersionedMetaData.ABI instead. var VersionedABI = VersionedMetaData.ABI // Deprecated: Use VersionedMetaData.Sigs instead. // VersionedFuncSigs maps the 4-byte function signature to its string representation. var VersionedFuncSigs = VersionedMetaData.Sigs // Versioned is an auto generated Go binding around an Ethereum contract. type Versioned struct { VersionedCaller // Read-only binding to the contract VersionedTransactor // Write-only binding to the contract VersionedFilterer // Log filterer for contract events } // VersionedCaller is an auto generated read-only Go binding around an Ethereum contract. type VersionedCaller struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // VersionedTransactor is an auto generated write-only Go binding around an Ethereum contract. type VersionedTransactor struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // VersionedFilterer is an auto generated log filtering Go binding around an Ethereum contract events. type VersionedFilterer struct { contract *bind.BoundContract // Generic contract wrapper for the low level calls } // VersionedSession is an auto generated Go binding around an Ethereum contract, // with pre-set call and transact options. type VersionedSession struct { Contract *Versioned // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // VersionedCallerSession is an auto generated read-only Go binding around an Ethereum contract, // with pre-set call options. type VersionedCallerSession struct { Contract *VersionedCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session } // VersionedTransactorSession is an auto generated write-only Go binding around an Ethereum contract, // with pre-set transact options. type VersionedTransactorSession struct { Contract *VersionedTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session } // VersionedRaw is an auto generated low-level Go binding around an Ethereum contract. type VersionedRaw struct { Contract *Versioned // Generic contract binding to access the raw methods on } // VersionedCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. type VersionedCallerRaw struct { Contract *VersionedCaller // Generic read-only contract binding to access the raw methods on } // VersionedTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. type VersionedTransactorRaw struct { Contract *VersionedTransactor // Generic write-only contract binding to access the raw methods on } // NewVersioned creates a new instance of Versioned, bound to a specific deployed contract. func NewVersioned(address common.Address, backend bind.ContractBackend) (*Versioned, error) { contract, err := bindVersioned(address, backend, backend, backend) if err != nil { return nil, err } return &Versioned{VersionedCaller: VersionedCaller{contract: contract}, VersionedTransactor: VersionedTransactor{contract: contract}, VersionedFilterer: VersionedFilterer{contract: contract}}, nil } // NewVersionedCaller creates a new read-only instance of Versioned, bound to a specific deployed contract. func NewVersionedCaller(address common.Address, caller bind.ContractCaller) (*VersionedCaller, error) { contract, err := bindVersioned(address, caller, nil, nil) if err != nil { return nil, err } return &VersionedCaller{contract: contract}, nil } // NewVersionedTransactor creates a new write-only instance of Versioned, bound to a specific deployed contract. func NewVersionedTransactor(address common.Address, transactor bind.ContractTransactor) (*VersionedTransactor, error) { contract, err := bindVersioned(address, nil, transactor, nil) if err != nil { return nil, err } return &VersionedTransactor{contract: contract}, nil } // NewVersionedFilterer creates a new log filterer instance of Versioned, bound to a specific deployed contract. func NewVersionedFilterer(address common.Address, filterer bind.ContractFilterer) (*VersionedFilterer, error) { contract, err := bindVersioned(address, nil, nil, filterer) if err != nil { return nil, err } return &VersionedFilterer{contract: contract}, nil } // bindVersioned binds a generic wrapper to an already deployed contract. func bindVersioned(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { parsed, err := VersionedMetaData.GetAbi() if err != nil { return nil, err } return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Versioned *VersionedRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Versioned.Contract.VersionedCaller.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Versioned *VersionedRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Versioned.Contract.VersionedTransactor.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Versioned *VersionedRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Versioned.Contract.VersionedTransactor.contract.Transact(opts, method, params...) } // Call invokes the (constant) contract method with params as input values and // sets the output to result. The result type might be a single field for simple // returns, a slice of interfaces for anonymous returns and a struct for named // returns. func (_Versioned *VersionedCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { return _Versioned.Contract.contract.Call(opts, result, method, params...) } // Transfer initiates a plain transaction to move funds to the contract, calling // its default method if one is available. func (_Versioned *VersionedTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { return _Versioned.Contract.contract.Transfer(opts) } // Transact invokes the (paid) contract method with params as input values. func (_Versioned *VersionedTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { return _Versioned.Contract.contract.Transact(opts, method, params...) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_Versioned *VersionedCaller) Version(opts *bind.CallOpts) (string, error) { var out []interface{} err := _Versioned.contract.Call(opts, &out, "version") if err != nil { return *new(string), err } out0 := *abi.ConvertType(out[0], new(string)).(*string) return out0, err } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_Versioned *VersionedSession) Version() (string, error) { return _Versioned.Contract.Version(&_Versioned.CallOpts) } // Version is a free data retrieval call binding the contract method 0x54fd4d50. // // Solidity: function version() view returns(string versionString) func (_Versioned *VersionedCallerSession) Version() (string, error) { return _Versioned.Contract.Version(&_Versioned.CallOpts) }