You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

2937 lines
167 KiB

// Code generated - DO NOT EDIT.
// This file is a generated binding and any manual changes will be lost.
package HermezAuctionProtocol
import (
"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"
"github.com/hermeznetwork/tracerr"
)
// Reference imports to suppress errors if they are not otherwise used.
var (
_ = big.NewInt
_ = strings.NewReader
_ = ethereum.NotFound
_ = bind.Bind
_ = common.Big1
_ = types.BloomLookup
_ = event.NewSubscription
)
// HermezAuctionProtocolABI is the input ABI used to generate the binding from.
const HermezAuctionProtocolABI = "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"}],\"name\":\"HEZClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16[3]\",\"name\":\"newAllocationRatio\",\"type\":\"uint16[3]\"}],\"name\":\"NewAllocationRatio\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint128\",\"name\":\"slot\",\"type\":\"uint128\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"bidAmount\",\"type\":\"uint128\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"}],\"name\":\"NewBid\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newBootCoordinator\",\"type\":\"address\"}],\"name\":\"NewBootCoordinator\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newClosedAuctionSlots\",\"type\":\"uint16\"}],\"name\":\"NewClosedAuctionSlots\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"slotSet\",\"type\":\"uint128\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"newInitialMinBid\",\"type\":\"uint128\"}],\"name\":\"NewDefaultSlotSetBid\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newDonationAddress\",\"type\":\"address\"}],\"name\":\"NewDonationAddress\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint128\",\"name\":\"slotToForge\",\"type\":\"uint128\"}],\"name\":\"NewForge\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint128\",\"name\":\"slotToForge\",\"type\":\"uint128\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"burnAmount\",\"type\":\"uint128\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"donationAmount\",\"type\":\"uint128\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"governanceAmount\",\"type\":\"uint128\"}],\"name\":\"NewForgeAllocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newOpenAuctionSlots\",\"type\":\"uint16\"}],\"name\":\"NewOpenAuctionSlots\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newOutbidding\",\"type\":\"uint16\"}],\"name\":\"NewOutbidding\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"newSlotDeadline\",\"type\":\"uint8\"}],\"name\":\"NewSlotDeadline\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"coordinatorURL\",\"type\":\"string\"}],\"name\":\"SetCoordinator\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BLOCKS_PER_SLOT\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INITIAL_MINIMAL_BIDDING\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"canForge\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"slotSet\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"newInitialMinBid\",\"type\":\"uint128\"}],\"name\":\"changeDefaultSlotSetBid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claimHEZ\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"coordinators\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"coordinatorURL\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"}],\"name\":\"forge\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"genesisBlock\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllocationRatio\",\"outputs\":[{\"internalType\":\"uint16[3]\",\"name\":\"\",\"type\":\"uint16[3]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBootCoordinator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"}],\"name\":\"getClaimableHEZ\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getClosedAuctionSlots\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentSlotNumber\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"slotSet\",\"type\":\"uint8\"}],\"name\":\"getDefaultSlotSetBid\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDonationAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"slot\",\"type\":\"uint128\"}],\"name\":\"getMinBidBySlot\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getOpenAuctionSlots\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getOutbidding\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSlotDeadline\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"blockNumber\",\"type\":\"uint128\"}],\"name\":\"getSlotNumber\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"slot\",\"type\":\"uint128\"}],\"name\":\"getSlotSet\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint128\",\"name\":\"genesis\",\"type\":\"uint128\"},{\"internalType\":\"address\",\"name\":\"hermezRollupAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"governanceAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"donationAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"bootCoordinatorAddress\",\"type\":\"address\"}],\"name\":\"hermezAuctionProtocolInitializer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hermezRollup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"pendingBalances\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"slot\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"bidAmount\",\"type\":\"uint128\"},{\"internalType\":\"bytes\",\"name\":\"permit\",\"type\":\"bytes\"}],\"name\":\"processBid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"startingSlot\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"endingSlot\",\"type\":\"uint128\"},{\"internalType\":\"bool[6]\",\"name\":\"slotSets\",\"type\":\"bool[6]\"},{\"internalType\":\"uint128\",\"name\":\"maxBid\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"minBid\",\"type\":\"uint128\"},{\"internalType\":\"bytes\",\"name\":\"permit\",\"type\":\"bytes\"}],\"name\":\"processMultiBid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16[3]\",\"name\":\"newAllocationRatio\",\"type\":\"uint16[3]\"}],\"name\":\"setAllocationRatio\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newBootCoordinator\",\"type\":\"address\"}],\"name\":\"setBootCoordinator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"newClosedAuctionSlots\",\"type\":\"uint16\"}],\"name\":\"setClosedAuctionSlots\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"forger\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"coordinatorURL\",\"type\":\"string\"}],\"name\":\"setCoordinator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newDonationAddress\",\"type\":\"address\"}],\"name\":\"setDonationAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"newOpenAuctionSlots\",\"type\":\"uint16\"}],\"name\":\"setOpenAuctionSlots\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"newOutbidding\",\"type\":\"uint16\"}],\"name\":\"setOutbidding\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"newDeadline\",\"type\":\"uint8\"}],\"name\":\"setSlotDeadline\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"name\":\"slots\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"fulfilled\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"bidAmount\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"closedMinBid\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tokenHEZ\",\"outputs\":[{\"internalType\":\"contractIHEZToken\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
// HermezAuctionProtocolBin is the compiled bytecode used for deploying new contracts.
var HermezAuctionProtocolBin = "0x608060405234801561001057600080fd5b50613d67806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c806379a135e311610125578063b3dc7bb1116100ad578063d92bdda31161007c578063d92bdda314610891578063dfd5281b146108b2578063e6065914146108d3578063ec29159b146108db578063ecdae41b1461091b5761021c565b8063b3dc7bb1146107e3578063b5f7f2f014610809578063bc41556714610811578063c63de515146108705761021c565b806387e6b6bb116100f457806387e6b6bb146106df578063a48af096146106ff578063ac4b9012146107ad578063ac5f658b146107b5578063aebd6d98146107db5761021c565b806379a135e3146106175780637c643b701461061f578063827874051461064d57806383b1f6a01461069f5761021c565b806354c03ab7116101a85780635cca4903116101775780635cca4903146105485780636074db641461056e57806362945af2146105c35780636dfe47c9146105e95780636f48e79b146105f15761021c565b806354c03ab71461042357806355b442e614610447578063564e6a711461044f578063583ad0dd1461046f5761021c565b806337d1bd0b116101ef57806337d1bd0b146103215780634b93b7fa146103475780634cdc9c63146103d65780634da9639d146103de5780634e5a5178146103fd5761021c565b80630c4da4f6146102215780630eeaf0801461024557806313de9af2146102fb5780632243de4714610319575b600080fd5b610229610941565b604080516001600160801b039092168252519081900360200190f35b6102f96004803603604081101561025b57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111600160201b831117156102b857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610951945050505050565b005b610303610aff565b6040805160ff9092168252519081900360200190f35b610303610b0e565b6102296004803603602081101561033757600080fd5b50356001600160801b0316610b13565b6102f96004803603608081101561035d57600080fd5b6001600160801b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561039857600080fd5b8201836020820111156103aa57600080fd5b803590602001918460018302840111600160201b831117156103cb57600080fd5b509092509050610cb8565b610229610fc2565b6103e6610fd1565b6040805161ffff9092168252519081900360200190f35b6102f96004803603602081101561041357600080fd5b50356001600160a01b0316610fe2565b61042b611517565b604080516001600160a01b039092168252519081900360200190f35b6103e6611526565b6102296004803603602081101561046557600080fd5b503560ff16611530565b6102f9600480360361018081101561048657600080fd5b6040805160c081810183526001600160801b038535811695602081013582169594810135909116938101929091610120830191906060840190600690839083908082843760009201919091525091946001600160801b0384358116956020860135909116949193509150606081019060400135600160201b81111561050a57600080fd5b82018360208201111561051c57600080fd5b803590602001918460018302840111600160201b8311171561053d57600080fd5b509092509050611568565b6102296004803603602081101561055e57600080fd5b50356001600160a01b031661194a565b6102f9600480360360c081101561058457600080fd5b506001600160a01b0381358116916001600160801b036020820135169160408201358116916060810135821691608082013581169160a001351661196e565b6102f9600480360360208110156105d957600080fd5b50356001600160a01b0316611baf565b6102f9611c48565b6102f96004803603602081101561060757600080fd5b50356001600160a01b0316611e2c565b61042b611f0a565b6102f96004803603604081101561063557600080fd5b506001600160801b0381358116916020013516611f19565b6102f96004803603606081101561066357600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091945061217d9350505050565b6106cb600480360360408110156106b557600080fd5b506001600160a01b0381351690602001356122f1565b604080519115158252519081900360200190f35b6102f9600480360360208110156106f557600080fd5b503560ff16612306565b6107256004803603602081101561071557600080fd5b50356001600160a01b03166123ec565b60405180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610771578181015183820152602001610759565b50505050905090810190601f16801561079e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6103e66124a0565b610229600480360360208110156107cb57600080fd5b50356001600160801b03166124b1565b61042b6124c7565b610229600480360360208110156107f957600080fd5b50356001600160801b03166124d6565b61042b612510565b6108376004803603602081101561082757600080fd5b50356001600160801b031661251f565b604080516001600160a01b03909516855292151560208501526001600160801b0391821684840152166060830152519081900360800190f35b6102f96004803603602081101561088657600080fd5b503561ffff16612562565b6102f9600480360360208110156108a757600080fd5b503561ffff16612609565b6102f9600480360360208110156108c857600080fd5b503561ffff166126b0565b61022961279d565b6108e36127a9565b6040518082606080838360005b838110156109085781810151838201526020016108f0565b5050505090500191505060405180910390f35b6102296004803603602081101561093157600080fd5b50356001600160a01b031661280b565b600061094c436124d6565b905090565b604080516000815260208082018084528251902084519093859301918291908401908083835b602083106109965780518252601f199092019160209182019101610977565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201415610a0e5760405162461bcd60e51b81526004018080602001828103825260348152602001806138bd6034913960400191505060405180910390fd5b33600090815260726020908152604090912080546001600160a01b0319166001600160a01b0385161781558251610a4d9260019092019184019061336d565b50816001600160a01b0316336001600160a01b03167f5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0836040518080602001828103825283818151815260200191508051906020019080838360005b83811015610ac1578181015183820152602001610aa9565b50505050905090810190601f168015610aee5780820380516001836020036101000a031916815260200191505b509250505060405180910390a35050565b606f5462010000900460ff1690565b602881565b606d54600090600160801b900461ffff16610b2c610941565b016001600160801b0316826001600160801b03161015610b7d5760405162461bcd60e51b81526004018080602001828103825260368152602001806137726036913960400191505060405180910390fd5b6000610b88836124b1565b6001600160801b038085166000908152607060205260409020600101549192501615610c2257606f546001600160801b03808516600090815260706020526040902060010154610c1d92610bf99261271092610bea9291169061ffff16612826565b6001600160801b0316906128a0565b6001600160801b0380861660009081526070602052604090206001015416906128e2565b610cb1565b606f54610cb190610c759061271090610bea9061ffff16606a6001600160801b03871660068110610c4f57fe5b60028104919091015460019091166010026101000a90046001600160801b031690612826565b606a836001600160801b031660068110610c8b57fe5b60028104919091015460019091166010026101000a90046001600160801b0316906128e2565b9392505050565b336000908152607260205260409020546001600160a01b0316610d0c5760405162461bcd60e51b815260040180806020018281038252603d8152602001806135b3603d913960400191505060405180910390fd5b606d54600160801b900461ffff16610d22610941565b016001600160801b0316846001600160801b031611610d725760405162461bcd60e51b8152600401808060200182810382526031815260200180613c2b6031913960400191505060405180910390fd5b610d7b84610b13565b6001600160801b0316836001600160801b03161015610dcb5760405162461bcd60e51b815260040180806020018281038252603081526020018061369b6030913960400191505060405180910390fd5b606d5461ffff600160901b8204811691600160801b900416610deb610941565b01016001600160801b0316846001600160801b03161115610e3d5760405162461bcd60e51b815260040180806020018281038252603381526020018061399d6033913960400191505060405180910390fd5b8015610e5757610e57856001600160801b03168383612948565b606554604080516323b872dd60e01b81523360048201523060248201526001600160801b038816604482015290516001600160a01b03909216916323b872dd916064808201926020929091908290030181600087803b158015610eb957600080fd5b505af1158015610ecd573d6000803e3d6000fd5b505050506040513d6020811015610ee357600080fd5b5051610f205760405162461bcd60e51b81526004018080602001828103825260388152602001806136cb6038913960400191505060405180910390fd5b33600090815260716020526040902054610f43906001600160801b0316866128e2565b33600090815260716020526040902080546001600160801b0319166001600160801b03928316179081905584821691161015610fb05760405162461bcd60e51b81526004018080602001828103825260358152602001806139686035913960400191505060405180910390fd5b610fbb848433612be7565b5050505050565b606d546001600160801b031681565b606d54600160801b900461ffff1690565b6066546001600160a01b0316331461102b5760405162461bcd60e51b8152600401808060200182810382526030815260200180613a246030913960400191505060405180910390fd5b6110358143612dca565b6110705760405162461bcd60e51b815260040180806020018281038252602a815260200180613ae9602a913960400191505060405180910390fd5b600061107a610941565b6001600160801b0381811660009081526070602052604081208054600190910154939450600160a01b900460ff16929091600160801b90910416156110e3576001600160801b03808416600090815260706020526040902060010154600160801b900416611121565b606a6110ee846124b1565b6001600160801b03166006811061110157fe5b600291828204019190066010029054906101000a90046001600160801b03165b9050816114d2576001600160801b0383166000908152607060205260409020805460ff60a01b1916600160a01b1790556069546001600160a01b0390811690851614801561118b57506001600160801b038084166000908152607060205260409020600101541615155b80156111b657506001600160801b038381166000908152607060205260409020600101548183169116105b1561125b576001600160801b0383811660009081526070602090815260408083206001810180548616600160801b88881602179081905590546001600160a01b031684526071909252909120546112119290811691166128e2565b6001600160801b038481166000908152607060209081526040808320546001600160a01b031683526071909152902080546001600160801b031916929091169190911790556114d2565b6069546001600160a01b038581169116146114d2576001600160801b03838116600090815260706020526040812060010180548316600160801b81021790819055606e5491926112b89261271092610bea92169061ffff16612826565b606e546001600160801b03868116600090815260706020526040812060010154939450926112f99261271092610bea92169062010000900461ffff16612826565b606e546001600160801b038781166000908152607060205260408120600101549394509261133b9261271092610bea921690600160201b900461ffff16612826565b60655460408051630852cd8d60e31b81526001600160801b038716600482015290519293506001600160a01b03909116916342966c68916024808201926020929091908290030181600087803b15801561139457600080fd5b505af11580156113a8573d6000803e3d6000fd5b505050506040513d60208110156113be57600080fd5b50506068546001600160a01b03166000908152607160205260409020546113ee906001600160801b0316836128e2565b6068546001600160a01b0390811660009081526071602052604080822080546001600160801b0319166001600160801b039586161790556067549092168152205461143a9116826128e2565b6067546001600160a01b03908116600090815260716020908152604080832080546001600160801b0319166001600160801b039687161790558a85168084526070835292819020548151898716815288871693810193909352948616828201525191938b84169316917fd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05916060908290030190a45050505b6040516001600160801b038416906001600160a01b038616907f7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad23890600090a350505050565b6068546001600160a01b031690565b606f5461ffff1690565b6000606a8260ff166006811061154257fe5b600291828204019190066010029054906101000a90046001600160801b03169050919050565b606d54600160801b900461ffff1661157e610941565b016001600160801b0316876001600160801b0316116115ce5760405162461bcd60e51b815260040180806020018281038252603581526020018061373d6035913960400191505060405180910390fd5b606d5461ffff600160901b8204811691600160801b9004166115ee610941565b01016001600160801b0316866001600160801b031611156116405760405162461bcd60e51b8152600401808060200182810382526037815260200180613bbe6037913960400191505060405180910390fd5b826001600160801b0316846001600160801b031610156116915760405162461bcd60e51b81526004018080602001828103825260418152602001806137a86041913960600191505060405180910390fd5b336000908152607260205260409020546001600160a01b03166116e55760405162461bcd60e51b8152600401808060200182810382526041815260200180613c5c6041913960600191505060405180910390fd5b80156116ff576116ff886001600160801b03168383612948565b606554604080516323b872dd60e01b81523360048201523060248201526001600160801b038b16604482015290516001600160a01b03909216916323b872dd916064808201926020929091908290030181600087803b15801561176157600080fd5b505af1158015611775573d6000803e3d6000fd5b505050506040513d602081101561178b57600080fd5b50516117c85760405162461bcd60e51b815260040180806020018281038252603d8152602001806135f0603d913960400191505060405180910390fd5b336000908152607160205260409020546117eb906001600160801b0316896128e2565b33600090815260716020526040812080546001600160801b0319166001600160801b039390931692909217909155875b876001600160801b0316816001600160801b03161161193e57600061183f82610b13565b9050856001600160801b0316816001600160801b031611611862578592506118a8565b856001600160801b0316816001600160801b03161180156118955750866001600160801b0316816001600160801b031611155b156118a2578092506118a8565b50611936565b876118b2836124b1565b6001600160801b0316600681106118c557fe5b60200201511561193457336000908152607160205260409020546001600160801b03808516911610156119295760405162461bcd60e51b8152600401808060200182810382526039815260200180613b496039913960400191505060405180910390fd5b611934828433612be7565b505b60010161181b565b50505050505050505050565b6001600160a01b03166000908152607160205260409020546001600160801b031690565b600054610100900460ff1680611987575061198761308d565b80611995575060005460ff16155b6119d05760405162461bcd60e51b815260040180806020018281038252602e815260200180613a54602e913960400191505060405180910390fd5b600054610100900460ff161580156119fb576000805460ff1961ff0019909116610100171660011790555b611a03613093565b606f80546103e861ffff199091161762ff0000191662140000179055606d805461ffff60801b1916600160811b1761ffff60901b1916608760951b17905560408051606081018252610fa080825260208201526107d091810191909152611a6e90606e9060036133eb565b506040805160c081018252678ac7230489e8000080825260208201819052918101829052606081018290526080810182905260a0810191909152611ab690606a90600661347d565b50606580546001600160a01b0319166001600160a01b038916179055606d54600160801b900461ffff9081166028021643016001600160801b0387161015611b2f5760405162461bcd60e51b815260040180806020018281038252604d815260200180613870604d913960600191505060405180910390fd5b606d80546001600160801b0319166001600160801b038816179055606680546001600160a01b03199081166001600160a01b0388811691909117909255606780548216878416179055606880548216868416179055606980549091169184169190911790558015611ba6576000805461ff00191690555b50505050505050565b6067546001600160a01b03163314611bf85760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b606980546001600160a01b0319166001600160a01b0383811691909117918290556040519116907f2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be5590600090a250565b60335460ff16611c9f576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6033805460ff191690556000611cb43361194a565b90506000816001600160801b031611611cfe5760405162461bcd60e51b81526004018080602001828103825260338152602001806139d06033913960400191505060405180910390fd5b33600081815260716020908152604080832080546001600160801b0319169055606554815163a9059cbb60e01b815260048101959095526001600160801b038616602486015290516001600160a01b039091169363a9059cbb9360448083019493928390030190829087803b158015611d7657600080fd5b505af1158015611d8a573d6000803e3d6000fd5b505050506040513d6020811015611da057600080fd5b5051611ddd5760405162461bcd60e51b8152600401808060200182810382526036815260200180613b136036913960400191505060405180910390fd5b604080516001600160801b0383168152905133917f199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f919081900360200190a2506033805460ff19166001179055565b6067546001600160a01b03163314611e755760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b6001600160a01b038116611eba5760405162461bcd60e51b815260040180806020018281038252603c815260200180613b82603c913960400191505060405180910390fd5b606880546001600160a01b0319166001600160a01b0383811691909117918290556040519116907fa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd790600090a250565b6065546001600160a01b031681565b6067546001600160a01b03163314611f625760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b6006826001600160801b03161115611fab5760405162461bcd60e51b81526004018080602001828103825260428152602001806136596042913960600191505060405180910390fd5b606a826001600160801b031660068110611fc157fe5b60028104919091015460019091166010026101000a90046001600160801b031661201c5760405162461bcd60e51b81526004018080602001828103825260428152602001806137e96042913960600191505060405180910390fd5b6000612026610941565b9050805b606d54600160801b900461ffff1682016001600160801b03908116908216116120e0576001600160801b03808216600090815260706020526040902060010154600160801b9004166120d857606a612081826124b1565b6001600160801b03166006811061209457fe5b6002810491909101546001600160801b038381166000908152607060205260409020600190810180548316919094166010026101000a90920416600160801b021790555b60010161202a565b5081606a846001600160801b0316600681106120f857fe5b600291828204019190066010026101000a8154816001600160801b0302191690836001600160801b031602179055507fa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172838360405180836001600160801b03168152602001826001600160801b031681526020019250505060405180910390a1505050565b6067546001600160a01b031633146121c65760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b805161271061ffff909116118015906121ec5750612710816001602002015161ffff1611155b80156122055750612710816002602002015161ffff1611155b801561222f5750806002602002015181600160200201518260006020020151010161ffff16612710145b61226a5760405162461bcd60e51b815260040180806020018281038252604581526020018061382b6045913960600191505060405180910390fd5b612277606e8260036133eb565b506040517f0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e490606e9060608101826000835b82829054906101000a900461ffff1661ffff16815260200190600201906020826001010492830192600103820291508084116122a9579050505091505060405180910390a150565b60006122fd8383612dca565b90505b92915050565b6067546001600160a01b0316331461234f5760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b602860ff821611156123925760405162461bcd60e51b81526004018080602001828103825260448152602001806138f16044913960600191505060405180910390fd5b606f805460ff8084166201000090810262ff0000199093169290921792839055604080519290930416815290517f4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d39181900360200190a150565b6072602090815260009182526040918290208054600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582526001600160a01b039092169492939092908301828280156124965780601f1061246b57610100808354040283529160200191612496565b820191906000526020600020905b81548152906001019060200180831161247957829003601f168201915b5050505050905082565b606d54600160901b900461ffff1690565b60006123006001600160801b0383166006613142565b6066546001600160a01b031681565b606d546000906001600160801b0390811690831610156124f7576000612300565b50606d5460286001600160801b03918216909203160490565b6069546001600160a01b031690565b607060205260009081526040902080546001909101546001600160a01b03821691600160a01b900460ff16906001600160801b0380821691600160801b90041684565b6067546001600160a01b031633146125ab5760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b606d805461ffff808416600160901b90810261ffff60901b199093169290921792839055604080519290930416815290517f3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f19181900360200190a150565b6067546001600160a01b031633146126525760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b606d805461ffff808416600160801b90810261ffff60801b199093169290921792839055604080519290930416815290517fc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea9181900360200190a150565b6067546001600160a01b031633146126f95760405162461bcd60e51b8152600401808060200182810382526036815260200180613a826036913960400191505060405180910390fd5b60018161ffff1611801561271257506127108161ffff16105b61274d5760405162461bcd60e51b815260040180806020018281038252603a815260200180613703603a913960400191505060405180910390fd5b606f805461ffff191661ffff838116919091179182905560408051929091168252517fd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e916020908290030190a150565b678ac7230489e8000081565b6127b161351e565b60408051606081019182905290606e90600390826000855b82829054906101000a900461ffff1661ffff16815260200190600201906020826001010492830192600103820291508084116127c95790505050505050905090565b6071602052600090815260409020546001600160801b031681565b60006001600160801b03831661283e57506000612300565b8282026001600160801b03808416908086169083168161285a57fe5b046001600160801b0316146122fd5760405162461bcd60e51b8152600401808060200182810382526021815260200180613a036021913960400191505060405180910390fd5b60006122fd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613184565b60008282016001600160801b0380851690821610156122fd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008282602081101561295a57600080fd5b50356001600160e01b031916905063d505accf60e01b81146129ad5760405162461bcd60e51b815260040180806020018281038252602e815260200180613c9d602e913960400191505060405180910390fd5b60008080808080806129c2896004818d61358a565b60e08110156129d057600080fd5b506001600160a01b038135811698506020820135169650604081013595506060810135945060ff608082013516935060a0810135925060c001359050338714612a4a5760405162461bcd60e51b8152600401808060200182810382526036815260200180613cfc6036913960400191505060405180910390fd5b6001600160a01b0386163014612a915760405162461bcd60e51b8152600401808060200182810382526036815260200180613bf56036913960400191505060405180910390fd5b8a8514612acf5760405162461bcd60e51b815260040180806020018281038252602c81526020018061362d602c913960400191505060405180910390fd5b606554604080516001600160a01b038a811660248301528981166044830152606482018990526084820188905260ff871660a483015260c4820186905260e48083018690528351808403909101815261010490920183526020820180516001600160e01b031663d505accf60e01b178152925182519190941693919282918083835b60208310612b705780518252601f199092019160209182019101612b51565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612bd2576040519150601f19603f3d011682016040523d82523d6000602084013e612bd7565b606091505b5050505050505050505050505050565b6001600160801b03808416600090815260706020526040902080546001909101546001600160a01b03909116919081169084168110612c575760405162461bcd60e51b8152600401808060200182810382526031815260200180613ab86031913960400191505060405180910390fd5b6001600160a01b038316600090815260716020526040902054612c83906001600160801b031685613241565b6001600160a01b03848116600081815260716020908152604080832080546001600160801b03199081166001600160801b03988916179091558b87168452607090925290912080546001600160a01b0319169092178255600191909101805490911692871692909217909155821615801590612d0757506001600160801b03811615155b15612d6f576001600160a01b038216600090815260716020526040902054612d38906001600160801b0316826128e2565b6001600160a01b038316600090815260716020526040902080546001600160801b0319166001600160801b03929092169190911790555b826001600160a01b0316856001600160801b03167fd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e4338660405180826001600160801b0316815260200191505060405180910390a35050505050565b6000600160801b8210612e0e5760405162461bcd60e51b8152600401808060200182810382526031815260200180613ccb6031913960400191505060405180910390fd5b606d546001600160801b0316821015612e585760405162461bcd60e51b81526004018080602001828103825260338152602001806139356033913960400191505060405180910390fd5b6000612e63836124d6565b606d54909150600090612eac90612e9c906001600160801b0390811690612e8d9086166028612826565b6001600160801b0316906128e2565b6001600160801b03861690613241565b6001600160801b0380841660009081526070602052604081206001015492935091600160801b90041615612f04576001600160801b03808416600090815260706020526040902060010154600160801b900416612f42565b606a612f0f846124b1565b6001600160801b031660068110612f2257fe5b600291828204019190066010029054906101000a90046001600160801b03165b6001600160801b038416600090815260706020526040902054909150600160a01b900460ff16158015612f895750606f5462010000900460ff166001600160801b03831610155b15612f9a5760019350505050612300565b6001600160801b0383166000908152607060209081526040808320546001600160a01b0390811684526072909252909120548116908716148015612ffe57506001600160801b03838116600090815260706020526040902060010154818316911610155b1561300f5760019350505050612300565b6069546001600160a01b03878116911614801561307057506001600160801b038381166000908152607060205260409020600101548183169116108061307057506001600160801b0380841660009081526070602052604090206001015416155b156130815760019350505050612300565b60009350505050612300565b303b1590565b600054610100900460ff16806130ac57506130ac61308d565b806130ba575060005460ff16155b6130f55760405162461bcd60e51b815260040180806020018281038252602e815260200180613a54602e913960400191505060405180910390fd5b600054610100900460ff16158015613120576000805460ff1961ff0019909116610100171660011790555b6033805460ff19166001179055801561313f576000805461ff00191690555b50565b60006122fd83836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250613283565b6000816001600160801b0384166132195760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156131de5781810151838201526020016131c6565b50505050905090810190601f16801561320b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000836001600160801b0316856001600160801b03168161323757fe5b0495945050505050565b60006122fd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613300565b6000816001600160801b0384166132db5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156131de5781810151838201526020016131c6565b50826001600160801b0316846001600160801b0316816132f757fe5b06949350505050565b6000836001600160801b0316836001600160801b0316111582906133655760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156131de5781810151838201526020016131c6565b505050900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133ae57805160ff19168380011785556133db565b828001600101855582156133db579182015b828111156133db5782518255916020019190600101906133c0565b506133e792915061353c565b5090565b6001830191839082156134715791602002820160005b8382111561344157835183826101000a81548161ffff021916908361ffff1602179055509260200192600201602081600101049283019260010302613401565b801561346f5782816101000a81549061ffff0219169055600201602081600101049283019260010302613441565b505b506133e7929150613551565b6003830191839082156135125791602002820160005b838211156134dd57835183826101000a8154816001600160801b0302191690836001600160801b031602179055509260200192601001602081600f01049283019260010302613493565b80156135105782816101000a8154906001600160801b030219169055601001602081600f010492830192600103026134dd565b505b506133e792915061356b565b60405180606001604052806003906020820280368337509192915050565b5b808211156133e7576000815560010161353d565b5b808211156133e757805461ffff19168155600101613552565b5b808211156133e75780546001600160801b031916815560010161356c565b60008085851115613599578182fd5b838611156135a5578182fd5b505082019391909203915056fe4865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a20434f4f5244494e41544f525f4e4f545f524547495354455245444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c74694269643a20544f4b454e5f5452414e534645525f4641494c45444865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a2057524f4e475f414d4f554e544865726d657a41756374696f6e50726f746f636f6c3a3a6368616e676544656661756c74536c6f745365744269643a204e4f545f56414c49445f534c4f545f5345544865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a2042454c4f575f4d494e494d554d4865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a20544f4b454e5f5452414e534645525f4641494c45444865726d657a41756374696f6e50726f746f636f6c3a3a7365744f757462696464696e673a204f555442494444494e475f4e4f545f56414c49444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c74694269642041554354494f4e5f434c4f5345444865726d657a41756374696f6e50726f746f636f6c3a3a6765744d696e4269644279536c6f743a2041554354494f4e5f434c4f5345444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c7469426964204d41584249445f475245415445525f5448414e5f4d494e4249444865726d657a41756374696f6e50726f746f636f6c3a3a6368616e676544656661756c74536c6f745365744269643a20534c4f545f444543454e5452414c495a45444865726d657a41756374696f6e50726f746f636f6c3a3a736574416c6c6f636174696f6e526174696f3a20414c4c4f434154494f4e5f524154494f5f4e4f545f56414c49444865726d657a41756374696f6e50726f746f636f6c3a3a6865726d657a41756374696f6e50726f746f636f6c496e697469616c697a65722047454e455349535f42454c4f575f4d494e494d414c4865726d657a41756374696f6e50726f746f636f6c3a3a736574436f6f7264696e61746f723a204e4f545f56414c49445f55524c4865726d657a41756374696f6e50726f746f636f6c3a3a736574536c6f74446561646c696e653a20475245415445525f5448414e5f424c4f434b535f5045525f534c4f544865726d657a41756374696f6e50726f746f636f6c3a3a63616e466f7267652041554354494f4e5f4e4f545f535441525445444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a204e4f545f454e4f5547485f42414c414e43454865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a2041554354494f4e5f4e4f545f4f50454e4865726d657a41756374696f6e50726f746f636f6c3a3a636c61696d48455a3a204e4f545f454e4f5547485f42414c414e4345536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774865726d657a41756374696f6e50726f746f636f6c3a3a666f7267653a204f4e4c595f4845524d455a5f524f4c4c5550436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65644865726d657a41756374696f6e50726f746f636f6c3a3a6f6e6c79476f7665726e616e63653a204f4e4c595f474f5645524e414e43454865726d657a41756374696f6e50726f746f636f6c3a3a5f646f4269643a204249445f4d5553545f42455f4849474845524865726d657a41756374696f6e50726f746f636f6c3a3a666f7267653a2043414e4e4f545f464f5247454865726d657a41756374696f6e50726f746f636f6c3a3a636c61696d48455a3a20544f4b454e5f5452414e534645525f4641494c45444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c7469426964204e4f545f454e4f5547485f42414c414e43454865726d657a41756374696f6e50726f746f636f6c3a3a736574446f6e6174696f6e416464726573733a204e4f545f56414c49445f414444524553534865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c74694269642041554354494f4e5f4e4f545f4f50454e4865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a205350454e4445525f4e4f545f455155414c5f544849534865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a2041554354494f4e5f434c4f5345444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c746942696420434f4f5244494e41544f525f4e4f545f524547495354455245444865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a204e4f545f56414c49445f43414c4c4865726d657a41756374696f6e50726f746f636f6c3a3a63616e466f7267652057524f4e475f424c4f434b4e554d4245524865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a204f574e45525f4e4f545f455155414c5f53454e444552a2646970667358221220664c7f08070832230f3af243de959f63bd5bcf24feda4f21be895f9e6724e3ef64736f6c634300060c0033"
// DeployHermezAuctionProtocol deploys a new Ethereum contract, binding an instance of HermezAuctionProtocol to it.
func DeployHermezAuctionProtocol(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *HermezAuctionProtocol, error) {
parsed, err := abi.JSON(strings.NewReader(HermezAuctionProtocolABI))
if err != nil {
return common.Address{}, nil, nil, tracerr.Wrap(err)
}
address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(HermezAuctionProtocolBin), backend)
if err != nil {
return common.Address{}, nil, nil, tracerr.Wrap(err)
}
return address, tx, &HermezAuctionProtocol{HermezAuctionProtocolCaller: HermezAuctionProtocolCaller{contract: contract}, HermezAuctionProtocolTransactor: HermezAuctionProtocolTransactor{contract: contract}, HermezAuctionProtocolFilterer: HermezAuctionProtocolFilterer{contract: contract}}, nil
}
// HermezAuctionProtocol is an auto generated Go binding around an Ethereum contract.
type HermezAuctionProtocol struct {
HermezAuctionProtocolCaller // Read-only binding to the contract
HermezAuctionProtocolTransactor // Write-only binding to the contract
HermezAuctionProtocolFilterer // Log filterer for contract events
}
// HermezAuctionProtocolCaller is an auto generated read-only Go binding around an Ethereum contract.
type HermezAuctionProtocolCaller struct {
contract *bind.BoundContract // Generic contract wrapper for the low level calls
}
// HermezAuctionProtocolTransactor is an auto generated write-only Go binding around an Ethereum contract.
type HermezAuctionProtocolTransactor struct {
contract *bind.BoundContract // Generic contract wrapper for the low level calls
}
// HermezAuctionProtocolFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
type HermezAuctionProtocolFilterer struct {
contract *bind.BoundContract // Generic contract wrapper for the low level calls
}
// HermezAuctionProtocolSession is an auto generated Go binding around an Ethereum contract,
// with pre-set call and transact options.
type HermezAuctionProtocolSession struct {
Contract *HermezAuctionProtocol // 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
}
// HermezAuctionProtocolCallerSession is an auto generated read-only Go binding around an Ethereum contract,
// with pre-set call options.
type HermezAuctionProtocolCallerSession struct {
Contract *HermezAuctionProtocolCaller // Generic contract caller binding to set the session for
CallOpts bind.CallOpts // Call options to use throughout this session
}
// HermezAuctionProtocolTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
// with pre-set transact options.
type HermezAuctionProtocolTransactorSession struct {
Contract *HermezAuctionProtocolTransactor // Generic contract transactor binding to set the session for
TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}
// HermezAuctionProtocolRaw is an auto generated low-level Go binding around an Ethereum contract.
type HermezAuctionProtocolRaw struct {
Contract *HermezAuctionProtocol // Generic contract binding to access the raw methods on
}
// HermezAuctionProtocolCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
type HermezAuctionProtocolCallerRaw struct {
Contract *HermezAuctionProtocolCaller // Generic read-only contract binding to access the raw methods on
}
// HermezAuctionProtocolTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
type HermezAuctionProtocolTransactorRaw struct {
Contract *HermezAuctionProtocolTransactor // Generic write-only contract binding to access the raw methods on
}
// NewHermezAuctionProtocol creates a new instance of HermezAuctionProtocol, bound to a specific deployed contract.
func NewHermezAuctionProtocol(address common.Address, backend bind.ContractBackend) (*HermezAuctionProtocol, error) {
contract, err := bindHermezAuctionProtocol(address, backend, backend, backend)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocol{HermezAuctionProtocolCaller: HermezAuctionProtocolCaller{contract: contract}, HermezAuctionProtocolTransactor: HermezAuctionProtocolTransactor{contract: contract}, HermezAuctionProtocolFilterer: HermezAuctionProtocolFilterer{contract: contract}}, nil
}
// NewHermezAuctionProtocolCaller creates a new read-only instance of HermezAuctionProtocol, bound to a specific deployed contract.
func NewHermezAuctionProtocolCaller(address common.Address, caller bind.ContractCaller) (*HermezAuctionProtocolCaller, error) {
contract, err := bindHermezAuctionProtocol(address, caller, nil, nil)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolCaller{contract: contract}, nil
}
// NewHermezAuctionProtocolTransactor creates a new write-only instance of HermezAuctionProtocol, bound to a specific deployed contract.
func NewHermezAuctionProtocolTransactor(address common.Address, transactor bind.ContractTransactor) (*HermezAuctionProtocolTransactor, error) {
contract, err := bindHermezAuctionProtocol(address, nil, transactor, nil)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolTransactor{contract: contract}, nil
}
// NewHermezAuctionProtocolFilterer creates a new log filterer instance of HermezAuctionProtocol, bound to a specific deployed contract.
func NewHermezAuctionProtocolFilterer(address common.Address, filterer bind.ContractFilterer) (*HermezAuctionProtocolFilterer, error) {
contract, err := bindHermezAuctionProtocol(address, nil, nil, filterer)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolFilterer{contract: contract}, nil
}
// bindHermezAuctionProtocol binds a generic wrapper to an already deployed contract.
func bindHermezAuctionProtocol(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
parsed, err := abi.JSON(strings.NewReader(HermezAuctionProtocolABI))
if err != nil {
return nil, tracerr.Wrap(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 (_HermezAuctionProtocol *HermezAuctionProtocolRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
return _HermezAuctionProtocol.Contract.HermezAuctionProtocolCaller.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 (_HermezAuctionProtocol *HermezAuctionProtocolRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.HermezAuctionProtocolTransactor.contract.Transfer(opts)
}
// Transact invokes the (paid) contract method with params as input values.
func (_HermezAuctionProtocol *HermezAuctionProtocolRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.HermezAuctionProtocolTransactor.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 (_HermezAuctionProtocol *HermezAuctionProtocolCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
return _HermezAuctionProtocol.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 (_HermezAuctionProtocol *HermezAuctionProtocolTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.contract.Transfer(opts)
}
// Transact invokes the (paid) contract method with params as input values.
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.contract.Transact(opts, method, params...)
}
// BLOCKSPERSLOT is a free data retrieval call binding the contract method 0x2243de47.
//
// Solidity: function BLOCKS_PER_SLOT() view returns(uint8)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) BLOCKSPERSLOT(opts *bind.CallOpts) (uint8, error) {
var (
ret0 = new(uint8)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "BLOCKS_PER_SLOT")
return *ret0, tracerr.Wrap(err)
}
// BLOCKSPERSLOT is a free data retrieval call binding the contract method 0x2243de47.
//
// Solidity: function BLOCKS_PER_SLOT() view returns(uint8)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) BLOCKSPERSLOT() (uint8, error) {
return _HermezAuctionProtocol.Contract.BLOCKSPERSLOT(&_HermezAuctionProtocol.CallOpts)
}
// BLOCKSPERSLOT is a free data retrieval call binding the contract method 0x2243de47.
//
// Solidity: function BLOCKS_PER_SLOT() view returns(uint8)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) BLOCKSPERSLOT() (uint8, error) {
return _HermezAuctionProtocol.Contract.BLOCKSPERSLOT(&_HermezAuctionProtocol.CallOpts)
}
// INITIALMINIMALBIDDING is a free data retrieval call binding the contract method 0xe6065914.
//
// Solidity: function INITIAL_MINIMAL_BIDDING() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) INITIALMINIMALBIDDING(opts *bind.CallOpts) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "INITIAL_MINIMAL_BIDDING")
return *ret0, tracerr.Wrap(err)
}
// INITIALMINIMALBIDDING is a free data retrieval call binding the contract method 0xe6065914.
//
// Solidity: function INITIAL_MINIMAL_BIDDING() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) INITIALMINIMALBIDDING() (*big.Int, error) {
return _HermezAuctionProtocol.Contract.INITIALMINIMALBIDDING(&_HermezAuctionProtocol.CallOpts)
}
// INITIALMINIMALBIDDING is a free data retrieval call binding the contract method 0xe6065914.
//
// Solidity: function INITIAL_MINIMAL_BIDDING() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) INITIALMINIMALBIDDING() (*big.Int, error) {
return _HermezAuctionProtocol.Contract.INITIALMINIMALBIDDING(&_HermezAuctionProtocol.CallOpts)
}
// CanForge is a free data retrieval call binding the contract method 0x83b1f6a0.
//
// Solidity: function canForge(address forger, uint256 blockNumber) view returns(bool)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) CanForge(opts *bind.CallOpts, forger common.Address, blockNumber *big.Int) (bool, error) {
var (
ret0 = new(bool)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "canForge", forger, blockNumber)
return *ret0, tracerr.Wrap(err)
}
// CanForge is a free data retrieval call binding the contract method 0x83b1f6a0.
//
// Solidity: function canForge(address forger, uint256 blockNumber) view returns(bool)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) CanForge(forger common.Address, blockNumber *big.Int) (bool, error) {
return _HermezAuctionProtocol.Contract.CanForge(&_HermezAuctionProtocol.CallOpts, forger, blockNumber)
}
// CanForge is a free data retrieval call binding the contract method 0x83b1f6a0.
//
// Solidity: function canForge(address forger, uint256 blockNumber) view returns(bool)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) CanForge(forger common.Address, blockNumber *big.Int) (bool, error) {
return _HermezAuctionProtocol.Contract.CanForge(&_HermezAuctionProtocol.CallOpts, forger, blockNumber)
}
// Coordinators is a free data retrieval call binding the contract method 0xa48af096.
//
// Solidity: function coordinators(address ) view returns(address forger, string coordinatorURL)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) Coordinators(opts *bind.CallOpts, arg0 common.Address) (struct {
Forger common.Address
CoordinatorURL string
}, error) {
ret := new(struct {
Forger common.Address
CoordinatorURL string
})
out := ret
err := _HermezAuctionProtocol.contract.Call(opts, out, "coordinators", arg0)
return *ret, tracerr.Wrap(err)
}
// Coordinators is a free data retrieval call binding the contract method 0xa48af096.
//
// Solidity: function coordinators(address ) view returns(address forger, string coordinatorURL)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) Coordinators(arg0 common.Address) (struct {
Forger common.Address
CoordinatorURL string
}, error) {
return _HermezAuctionProtocol.Contract.Coordinators(&_HermezAuctionProtocol.CallOpts, arg0)
}
// Coordinators is a free data retrieval call binding the contract method 0xa48af096.
//
// Solidity: function coordinators(address ) view returns(address forger, string coordinatorURL)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) Coordinators(arg0 common.Address) (struct {
Forger common.Address
CoordinatorURL string
}, error) {
return _HermezAuctionProtocol.Contract.Coordinators(&_HermezAuctionProtocol.CallOpts, arg0)
}
// GenesisBlock is a free data retrieval call binding the contract method 0x4cdc9c63.
//
// Solidity: function genesisBlock() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GenesisBlock(opts *bind.CallOpts) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "genesisBlock")
return *ret0, tracerr.Wrap(err)
}
// GenesisBlock is a free data retrieval call binding the contract method 0x4cdc9c63.
//
// Solidity: function genesisBlock() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GenesisBlock() (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GenesisBlock(&_HermezAuctionProtocol.CallOpts)
}
// GenesisBlock is a free data retrieval call binding the contract method 0x4cdc9c63.
//
// Solidity: function genesisBlock() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GenesisBlock() (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GenesisBlock(&_HermezAuctionProtocol.CallOpts)
}
// GetAllocationRatio is a free data retrieval call binding the contract method 0xec29159b.
//
// Solidity: function getAllocationRatio() view returns(uint16[3])
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetAllocationRatio(opts *bind.CallOpts) ([3]uint16, error) {
var (
ret0 = new([3]uint16)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getAllocationRatio")
return *ret0, tracerr.Wrap(err)
}
// GetAllocationRatio is a free data retrieval call binding the contract method 0xec29159b.
//
// Solidity: function getAllocationRatio() view returns(uint16[3])
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetAllocationRatio() ([3]uint16, error) {
return _HermezAuctionProtocol.Contract.GetAllocationRatio(&_HermezAuctionProtocol.CallOpts)
}
// GetAllocationRatio is a free data retrieval call binding the contract method 0xec29159b.
//
// Solidity: function getAllocationRatio() view returns(uint16[3])
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetAllocationRatio() ([3]uint16, error) {
return _HermezAuctionProtocol.Contract.GetAllocationRatio(&_HermezAuctionProtocol.CallOpts)
}
// GetBootCoordinator is a free data retrieval call binding the contract method 0xb5f7f2f0.
//
// Solidity: function getBootCoordinator() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetBootCoordinator(opts *bind.CallOpts) (common.Address, error) {
var (
ret0 = new(common.Address)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getBootCoordinator")
return *ret0, tracerr.Wrap(err)
}
// GetBootCoordinator is a free data retrieval call binding the contract method 0xb5f7f2f0.
//
// Solidity: function getBootCoordinator() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetBootCoordinator() (common.Address, error) {
return _HermezAuctionProtocol.Contract.GetBootCoordinator(&_HermezAuctionProtocol.CallOpts)
}
// GetBootCoordinator is a free data retrieval call binding the contract method 0xb5f7f2f0.
//
// Solidity: function getBootCoordinator() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetBootCoordinator() (common.Address, error) {
return _HermezAuctionProtocol.Contract.GetBootCoordinator(&_HermezAuctionProtocol.CallOpts)
}
// GetClaimableHEZ is a free data retrieval call binding the contract method 0x5cca4903.
//
// Solidity: function getClaimableHEZ(address bidder) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetClaimableHEZ(opts *bind.CallOpts, bidder common.Address) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getClaimableHEZ", bidder)
return *ret0, tracerr.Wrap(err)
}
// GetClaimableHEZ is a free data retrieval call binding the contract method 0x5cca4903.
//
// Solidity: function getClaimableHEZ(address bidder) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetClaimableHEZ(bidder common.Address) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetClaimableHEZ(&_HermezAuctionProtocol.CallOpts, bidder)
}
// GetClaimableHEZ is a free data retrieval call binding the contract method 0x5cca4903.
//
// Solidity: function getClaimableHEZ(address bidder) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetClaimableHEZ(bidder common.Address) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetClaimableHEZ(&_HermezAuctionProtocol.CallOpts, bidder)
}
// GetClosedAuctionSlots is a free data retrieval call binding the contract method 0x4da9639d.
//
// Solidity: function getClosedAuctionSlots() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetClosedAuctionSlots(opts *bind.CallOpts) (uint16, error) {
var (
ret0 = new(uint16)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getClosedAuctionSlots")
return *ret0, tracerr.Wrap(err)
}
// GetClosedAuctionSlots is a free data retrieval call binding the contract method 0x4da9639d.
//
// Solidity: function getClosedAuctionSlots() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetClosedAuctionSlots() (uint16, error) {
return _HermezAuctionProtocol.Contract.GetClosedAuctionSlots(&_HermezAuctionProtocol.CallOpts)
}
// GetClosedAuctionSlots is a free data retrieval call binding the contract method 0x4da9639d.
//
// Solidity: function getClosedAuctionSlots() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetClosedAuctionSlots() (uint16, error) {
return _HermezAuctionProtocol.Contract.GetClosedAuctionSlots(&_HermezAuctionProtocol.CallOpts)
}
// GetCurrentSlotNumber is a free data retrieval call binding the contract method 0x0c4da4f6.
//
// Solidity: function getCurrentSlotNumber() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetCurrentSlotNumber(opts *bind.CallOpts) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getCurrentSlotNumber")
return *ret0, tracerr.Wrap(err)
}
// GetCurrentSlotNumber is a free data retrieval call binding the contract method 0x0c4da4f6.
//
// Solidity: function getCurrentSlotNumber() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetCurrentSlotNumber() (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetCurrentSlotNumber(&_HermezAuctionProtocol.CallOpts)
}
// GetCurrentSlotNumber is a free data retrieval call binding the contract method 0x0c4da4f6.
//
// Solidity: function getCurrentSlotNumber() view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetCurrentSlotNumber() (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetCurrentSlotNumber(&_HermezAuctionProtocol.CallOpts)
}
// GetDefaultSlotSetBid is a free data retrieval call binding the contract method 0x564e6a71.
//
// Solidity: function getDefaultSlotSetBid(uint8 slotSet) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetDefaultSlotSetBid(opts *bind.CallOpts, slotSet uint8) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getDefaultSlotSetBid", slotSet)
return *ret0, tracerr.Wrap(err)
}
// GetDefaultSlotSetBid is a free data retrieval call binding the contract method 0x564e6a71.
//
// Solidity: function getDefaultSlotSetBid(uint8 slotSet) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetDefaultSlotSetBid(slotSet uint8) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetDefaultSlotSetBid(&_HermezAuctionProtocol.CallOpts, slotSet)
}
// GetDefaultSlotSetBid is a free data retrieval call binding the contract method 0x564e6a71.
//
// Solidity: function getDefaultSlotSetBid(uint8 slotSet) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetDefaultSlotSetBid(slotSet uint8) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetDefaultSlotSetBid(&_HermezAuctionProtocol.CallOpts, slotSet)
}
// GetDonationAddress is a free data retrieval call binding the contract method 0x54c03ab7.
//
// Solidity: function getDonationAddress() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetDonationAddress(opts *bind.CallOpts) (common.Address, error) {
var (
ret0 = new(common.Address)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getDonationAddress")
return *ret0, tracerr.Wrap(err)
}
// GetDonationAddress is a free data retrieval call binding the contract method 0x54c03ab7.
//
// Solidity: function getDonationAddress() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetDonationAddress() (common.Address, error) {
return _HermezAuctionProtocol.Contract.GetDonationAddress(&_HermezAuctionProtocol.CallOpts)
}
// GetDonationAddress is a free data retrieval call binding the contract method 0x54c03ab7.
//
// Solidity: function getDonationAddress() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetDonationAddress() (common.Address, error) {
return _HermezAuctionProtocol.Contract.GetDonationAddress(&_HermezAuctionProtocol.CallOpts)
}
// GetMinBidBySlot is a free data retrieval call binding the contract method 0x37d1bd0b.
//
// Solidity: function getMinBidBySlot(uint128 slot) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetMinBidBySlot(opts *bind.CallOpts, slot *big.Int) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getMinBidBySlot", slot)
return *ret0, tracerr.Wrap(err)
}
// GetMinBidBySlot is a free data retrieval call binding the contract method 0x37d1bd0b.
//
// Solidity: function getMinBidBySlot(uint128 slot) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetMinBidBySlot(slot *big.Int) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetMinBidBySlot(&_HermezAuctionProtocol.CallOpts, slot)
}
// GetMinBidBySlot is a free data retrieval call binding the contract method 0x37d1bd0b.
//
// Solidity: function getMinBidBySlot(uint128 slot) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetMinBidBySlot(slot *big.Int) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetMinBidBySlot(&_HermezAuctionProtocol.CallOpts, slot)
}
// GetOpenAuctionSlots is a free data retrieval call binding the contract method 0xac4b9012.
//
// Solidity: function getOpenAuctionSlots() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetOpenAuctionSlots(opts *bind.CallOpts) (uint16, error) {
var (
ret0 = new(uint16)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getOpenAuctionSlots")
return *ret0, tracerr.Wrap(err)
}
// GetOpenAuctionSlots is a free data retrieval call binding the contract method 0xac4b9012.
//
// Solidity: function getOpenAuctionSlots() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetOpenAuctionSlots() (uint16, error) {
return _HermezAuctionProtocol.Contract.GetOpenAuctionSlots(&_HermezAuctionProtocol.CallOpts)
}
// GetOpenAuctionSlots is a free data retrieval call binding the contract method 0xac4b9012.
//
// Solidity: function getOpenAuctionSlots() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetOpenAuctionSlots() (uint16, error) {
return _HermezAuctionProtocol.Contract.GetOpenAuctionSlots(&_HermezAuctionProtocol.CallOpts)
}
// GetOutbidding is a free data retrieval call binding the contract method 0x55b442e6.
//
// Solidity: function getOutbidding() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetOutbidding(opts *bind.CallOpts) (uint16, error) {
var (
ret0 = new(uint16)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getOutbidding")
return *ret0, tracerr.Wrap(err)
}
// GetOutbidding is a free data retrieval call binding the contract method 0x55b442e6.
//
// Solidity: function getOutbidding() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetOutbidding() (uint16, error) {
return _HermezAuctionProtocol.Contract.GetOutbidding(&_HermezAuctionProtocol.CallOpts)
}
// GetOutbidding is a free data retrieval call binding the contract method 0x55b442e6.
//
// Solidity: function getOutbidding() view returns(uint16)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetOutbidding() (uint16, error) {
return _HermezAuctionProtocol.Contract.GetOutbidding(&_HermezAuctionProtocol.CallOpts)
}
// GetSlotDeadline is a free data retrieval call binding the contract method 0x13de9af2.
//
// Solidity: function getSlotDeadline() view returns(uint8)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetSlotDeadline(opts *bind.CallOpts) (uint8, error) {
var (
ret0 = new(uint8)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getSlotDeadline")
return *ret0, tracerr.Wrap(err)
}
// GetSlotDeadline is a free data retrieval call binding the contract method 0x13de9af2.
//
// Solidity: function getSlotDeadline() view returns(uint8)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetSlotDeadline() (uint8, error) {
return _HermezAuctionProtocol.Contract.GetSlotDeadline(&_HermezAuctionProtocol.CallOpts)
}
// GetSlotDeadline is a free data retrieval call binding the contract method 0x13de9af2.
//
// Solidity: function getSlotDeadline() view returns(uint8)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetSlotDeadline() (uint8, error) {
return _HermezAuctionProtocol.Contract.GetSlotDeadline(&_HermezAuctionProtocol.CallOpts)
}
// GetSlotNumber is a free data retrieval call binding the contract method 0xb3dc7bb1.
//
// Solidity: function getSlotNumber(uint128 blockNumber) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetSlotNumber(opts *bind.CallOpts, blockNumber *big.Int) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getSlotNumber", blockNumber)
return *ret0, tracerr.Wrap(err)
}
// GetSlotNumber is a free data retrieval call binding the contract method 0xb3dc7bb1.
//
// Solidity: function getSlotNumber(uint128 blockNumber) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetSlotNumber(blockNumber *big.Int) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetSlotNumber(&_HermezAuctionProtocol.CallOpts, blockNumber)
}
// GetSlotNumber is a free data retrieval call binding the contract method 0xb3dc7bb1.
//
// Solidity: function getSlotNumber(uint128 blockNumber) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetSlotNumber(blockNumber *big.Int) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetSlotNumber(&_HermezAuctionProtocol.CallOpts, blockNumber)
}
// GetSlotSet is a free data retrieval call binding the contract method 0xac5f658b.
//
// Solidity: function getSlotSet(uint128 slot) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetSlotSet(opts *bind.CallOpts, slot *big.Int) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "getSlotSet", slot)
return *ret0, tracerr.Wrap(err)
}
// GetSlotSet is a free data retrieval call binding the contract method 0xac5f658b.
//
// Solidity: function getSlotSet(uint128 slot) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetSlotSet(slot *big.Int) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetSlotSet(&_HermezAuctionProtocol.CallOpts, slot)
}
// GetSlotSet is a free data retrieval call binding the contract method 0xac5f658b.
//
// Solidity: function getSlotSet(uint128 slot) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetSlotSet(slot *big.Int) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.GetSlotSet(&_HermezAuctionProtocol.CallOpts, slot)
}
// HermezRollup is a free data retrieval call binding the contract method 0xaebd6d98.
//
// Solidity: function hermezRollup() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) HermezRollup(opts *bind.CallOpts) (common.Address, error) {
var (
ret0 = new(common.Address)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "hermezRollup")
return *ret0, tracerr.Wrap(err)
}
// HermezRollup is a free data retrieval call binding the contract method 0xaebd6d98.
//
// Solidity: function hermezRollup() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) HermezRollup() (common.Address, error) {
return _HermezAuctionProtocol.Contract.HermezRollup(&_HermezAuctionProtocol.CallOpts)
}
// HermezRollup is a free data retrieval call binding the contract method 0xaebd6d98.
//
// Solidity: function hermezRollup() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) HermezRollup() (common.Address, error) {
return _HermezAuctionProtocol.Contract.HermezRollup(&_HermezAuctionProtocol.CallOpts)
}
// PendingBalances is a free data retrieval call binding the contract method 0xecdae41b.
//
// Solidity: function pendingBalances(address ) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) PendingBalances(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) {
var (
ret0 = new(*big.Int)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "pendingBalances", arg0)
return *ret0, tracerr.Wrap(err)
}
// PendingBalances is a free data retrieval call binding the contract method 0xecdae41b.
//
// Solidity: function pendingBalances(address ) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) PendingBalances(arg0 common.Address) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.PendingBalances(&_HermezAuctionProtocol.CallOpts, arg0)
}
// PendingBalances is a free data retrieval call binding the contract method 0xecdae41b.
//
// Solidity: function pendingBalances(address ) view returns(uint128)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) PendingBalances(arg0 common.Address) (*big.Int, error) {
return _HermezAuctionProtocol.Contract.PendingBalances(&_HermezAuctionProtocol.CallOpts, arg0)
}
// Slots is a free data retrieval call binding the contract method 0xbc415567.
//
// Solidity: function slots(uint128 ) view returns(address bidder, bool fulfilled, uint128 bidAmount, uint128 closedMinBid)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) Slots(opts *bind.CallOpts, arg0 *big.Int) (struct {
Bidder common.Address
Fulfilled bool
BidAmount *big.Int
ClosedMinBid *big.Int
}, error) {
ret := new(struct {
Bidder common.Address
Fulfilled bool
BidAmount *big.Int
ClosedMinBid *big.Int
})
out := ret
err := _HermezAuctionProtocol.contract.Call(opts, out, "slots", arg0)
return *ret, tracerr.Wrap(err)
}
// Slots is a free data retrieval call binding the contract method 0xbc415567.
//
// Solidity: function slots(uint128 ) view returns(address bidder, bool fulfilled, uint128 bidAmount, uint128 closedMinBid)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) Slots(arg0 *big.Int) (struct {
Bidder common.Address
Fulfilled bool
BidAmount *big.Int
ClosedMinBid *big.Int
}, error) {
return _HermezAuctionProtocol.Contract.Slots(&_HermezAuctionProtocol.CallOpts, arg0)
}
// Slots is a free data retrieval call binding the contract method 0xbc415567.
//
// Solidity: function slots(uint128 ) view returns(address bidder, bool fulfilled, uint128 bidAmount, uint128 closedMinBid)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) Slots(arg0 *big.Int) (struct {
Bidder common.Address
Fulfilled bool
BidAmount *big.Int
ClosedMinBid *big.Int
}, error) {
return _HermezAuctionProtocol.Contract.Slots(&_HermezAuctionProtocol.CallOpts, arg0)
}
// TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
//
// Solidity: function tokenHEZ() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) TokenHEZ(opts *bind.CallOpts) (common.Address, error) {
var (
ret0 = new(common.Address)
)
out := ret0
err := _HermezAuctionProtocol.contract.Call(opts, out, "tokenHEZ")
return *ret0, tracerr.Wrap(err)
}
// TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
//
// Solidity: function tokenHEZ() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) TokenHEZ() (common.Address, error) {
return _HermezAuctionProtocol.Contract.TokenHEZ(&_HermezAuctionProtocol.CallOpts)
}
// TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
//
// Solidity: function tokenHEZ() view returns(address)
func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) TokenHEZ() (common.Address, error) {
return _HermezAuctionProtocol.Contract.TokenHEZ(&_HermezAuctionProtocol.CallOpts)
}
// ChangeDefaultSlotSetBid is a paid mutator transaction binding the contract method 0x7c643b70.
//
// Solidity: function changeDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ChangeDefaultSlotSetBid(opts *bind.TransactOpts, slotSet *big.Int, newInitialMinBid *big.Int) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "changeDefaultSlotSetBid", slotSet, newInitialMinBid)
}
// ChangeDefaultSlotSetBid is a paid mutator transaction binding the contract method 0x7c643b70.
//
// Solidity: function changeDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ChangeDefaultSlotSetBid(slotSet *big.Int, newInitialMinBid *big.Int) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ChangeDefaultSlotSetBid(&_HermezAuctionProtocol.TransactOpts, slotSet, newInitialMinBid)
}
// ChangeDefaultSlotSetBid is a paid mutator transaction binding the contract method 0x7c643b70.
//
// Solidity: function changeDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ChangeDefaultSlotSetBid(slotSet *big.Int, newInitialMinBid *big.Int) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ChangeDefaultSlotSetBid(&_HermezAuctionProtocol.TransactOpts, slotSet, newInitialMinBid)
}
// ClaimHEZ is a paid mutator transaction binding the contract method 0x6dfe47c9.
//
// Solidity: function claimHEZ() returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ClaimHEZ(opts *bind.TransactOpts) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "claimHEZ")
}
// ClaimHEZ is a paid mutator transaction binding the contract method 0x6dfe47c9.
//
// Solidity: function claimHEZ() returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ClaimHEZ() (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ClaimHEZ(&_HermezAuctionProtocol.TransactOpts)
}
// ClaimHEZ is a paid mutator transaction binding the contract method 0x6dfe47c9.
//
// Solidity: function claimHEZ() returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ClaimHEZ() (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ClaimHEZ(&_HermezAuctionProtocol.TransactOpts)
}
// Forge is a paid mutator transaction binding the contract method 0x4e5a5178.
//
// Solidity: function forge(address forger) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) Forge(opts *bind.TransactOpts, forger common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "forge", forger)
}
// Forge is a paid mutator transaction binding the contract method 0x4e5a5178.
//
// Solidity: function forge(address forger) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) Forge(forger common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.Forge(&_HermezAuctionProtocol.TransactOpts, forger)
}
// Forge is a paid mutator transaction binding the contract method 0x4e5a5178.
//
// Solidity: function forge(address forger) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) Forge(forger common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.Forge(&_HermezAuctionProtocol.TransactOpts, forger)
}
// HermezAuctionProtocolInitializer is a paid mutator transaction binding the contract method 0x6074db64.
//
// Solidity: function hermezAuctionProtocolInitializer(address token, uint128 genesis, address hermezRollupAddress, address governanceAddress, address donationAddress, address bootCoordinatorAddress) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) HermezAuctionProtocolInitializer(opts *bind.TransactOpts, token common.Address, genesis *big.Int, hermezRollupAddress common.Address, governanceAddress common.Address, donationAddress common.Address, bootCoordinatorAddress common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "hermezAuctionProtocolInitializer", token, genesis, hermezRollupAddress, governanceAddress, donationAddress, bootCoordinatorAddress)
}
// HermezAuctionProtocolInitializer is a paid mutator transaction binding the contract method 0x6074db64.
//
// Solidity: function hermezAuctionProtocolInitializer(address token, uint128 genesis, address hermezRollupAddress, address governanceAddress, address donationAddress, address bootCoordinatorAddress) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) HermezAuctionProtocolInitializer(token common.Address, genesis *big.Int, hermezRollupAddress common.Address, governanceAddress common.Address, donationAddress common.Address, bootCoordinatorAddress common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.HermezAuctionProtocolInitializer(&_HermezAuctionProtocol.TransactOpts, token, genesis, hermezRollupAddress, governanceAddress, donationAddress, bootCoordinatorAddress)
}
// HermezAuctionProtocolInitializer is a paid mutator transaction binding the contract method 0x6074db64.
//
// Solidity: function hermezAuctionProtocolInitializer(address token, uint128 genesis, address hermezRollupAddress, address governanceAddress, address donationAddress, address bootCoordinatorAddress) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) HermezAuctionProtocolInitializer(token common.Address, genesis *big.Int, hermezRollupAddress common.Address, governanceAddress common.Address, donationAddress common.Address, bootCoordinatorAddress common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.HermezAuctionProtocolInitializer(&_HermezAuctionProtocol.TransactOpts, token, genesis, hermezRollupAddress, governanceAddress, donationAddress, bootCoordinatorAddress)
}
// ProcessBid is a paid mutator transaction binding the contract method 0x4b93b7fa.
//
// Solidity: function processBid(uint128 amount, uint128 slot, uint128 bidAmount, bytes permit) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ProcessBid(opts *bind.TransactOpts, amount *big.Int, slot *big.Int, bidAmount *big.Int, permit []byte) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "processBid", amount, slot, bidAmount, permit)
}
// ProcessBid is a paid mutator transaction binding the contract method 0x4b93b7fa.
//
// Solidity: function processBid(uint128 amount, uint128 slot, uint128 bidAmount, bytes permit) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ProcessBid(amount *big.Int, slot *big.Int, bidAmount *big.Int, permit []byte) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ProcessBid(&_HermezAuctionProtocol.TransactOpts, amount, slot, bidAmount, permit)
}
// ProcessBid is a paid mutator transaction binding the contract method 0x4b93b7fa.
//
// Solidity: function processBid(uint128 amount, uint128 slot, uint128 bidAmount, bytes permit) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ProcessBid(amount *big.Int, slot *big.Int, bidAmount *big.Int, permit []byte) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ProcessBid(&_HermezAuctionProtocol.TransactOpts, amount, slot, bidAmount, permit)
}
// ProcessMultiBid is a paid mutator transaction binding the contract method 0x583ad0dd.
//
// Solidity: function processMultiBid(uint128 amount, uint128 startingSlot, uint128 endingSlot, bool[6] slotSets, uint128 maxBid, uint128 minBid, bytes permit) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ProcessMultiBid(opts *bind.TransactOpts, amount *big.Int, startingSlot *big.Int, endingSlot *big.Int, slotSets [6]bool, maxBid *big.Int, minBid *big.Int, permit []byte) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "processMultiBid", amount, startingSlot, endingSlot, slotSets, maxBid, minBid, permit)
}
// ProcessMultiBid is a paid mutator transaction binding the contract method 0x583ad0dd.
//
// Solidity: function processMultiBid(uint128 amount, uint128 startingSlot, uint128 endingSlot, bool[6] slotSets, uint128 maxBid, uint128 minBid, bytes permit) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ProcessMultiBid(amount *big.Int, startingSlot *big.Int, endingSlot *big.Int, slotSets [6]bool, maxBid *big.Int, minBid *big.Int, permit []byte) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ProcessMultiBid(&_HermezAuctionProtocol.TransactOpts, amount, startingSlot, endingSlot, slotSets, maxBid, minBid, permit)
}
// ProcessMultiBid is a paid mutator transaction binding the contract method 0x583ad0dd.
//
// Solidity: function processMultiBid(uint128 amount, uint128 startingSlot, uint128 endingSlot, bool[6] slotSets, uint128 maxBid, uint128 minBid, bytes permit) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ProcessMultiBid(amount *big.Int, startingSlot *big.Int, endingSlot *big.Int, slotSets [6]bool, maxBid *big.Int, minBid *big.Int, permit []byte) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.ProcessMultiBid(&_HermezAuctionProtocol.TransactOpts, amount, startingSlot, endingSlot, slotSets, maxBid, minBid, permit)
}
// SetAllocationRatio is a paid mutator transaction binding the contract method 0x82787405.
//
// Solidity: function setAllocationRatio(uint16[3] newAllocationRatio) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetAllocationRatio(opts *bind.TransactOpts, newAllocationRatio [3]uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setAllocationRatio", newAllocationRatio)
}
// SetAllocationRatio is a paid mutator transaction binding the contract method 0x82787405.
//
// Solidity: function setAllocationRatio(uint16[3] newAllocationRatio) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetAllocationRatio(newAllocationRatio [3]uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetAllocationRatio(&_HermezAuctionProtocol.TransactOpts, newAllocationRatio)
}
// SetAllocationRatio is a paid mutator transaction binding the contract method 0x82787405.
//
// Solidity: function setAllocationRatio(uint16[3] newAllocationRatio) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetAllocationRatio(newAllocationRatio [3]uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetAllocationRatio(&_HermezAuctionProtocol.TransactOpts, newAllocationRatio)
}
// SetBootCoordinator is a paid mutator transaction binding the contract method 0x62945af2.
//
// Solidity: function setBootCoordinator(address newBootCoordinator) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetBootCoordinator(opts *bind.TransactOpts, newBootCoordinator common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setBootCoordinator", newBootCoordinator)
}
// SetBootCoordinator is a paid mutator transaction binding the contract method 0x62945af2.
//
// Solidity: function setBootCoordinator(address newBootCoordinator) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetBootCoordinator(newBootCoordinator common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetBootCoordinator(&_HermezAuctionProtocol.TransactOpts, newBootCoordinator)
}
// SetBootCoordinator is a paid mutator transaction binding the contract method 0x62945af2.
//
// Solidity: function setBootCoordinator(address newBootCoordinator) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetBootCoordinator(newBootCoordinator common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetBootCoordinator(&_HermezAuctionProtocol.TransactOpts, newBootCoordinator)
}
// SetClosedAuctionSlots is a paid mutator transaction binding the contract method 0xd92bdda3.
//
// Solidity: function setClosedAuctionSlots(uint16 newClosedAuctionSlots) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetClosedAuctionSlots(opts *bind.TransactOpts, newClosedAuctionSlots uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setClosedAuctionSlots", newClosedAuctionSlots)
}
// SetClosedAuctionSlots is a paid mutator transaction binding the contract method 0xd92bdda3.
//
// Solidity: function setClosedAuctionSlots(uint16 newClosedAuctionSlots) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetClosedAuctionSlots(newClosedAuctionSlots uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetClosedAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newClosedAuctionSlots)
}
// SetClosedAuctionSlots is a paid mutator transaction binding the contract method 0xd92bdda3.
//
// Solidity: function setClosedAuctionSlots(uint16 newClosedAuctionSlots) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetClosedAuctionSlots(newClosedAuctionSlots uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetClosedAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newClosedAuctionSlots)
}
// SetCoordinator is a paid mutator transaction binding the contract method 0x0eeaf080.
//
// Solidity: function setCoordinator(address forger, string coordinatorURL) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetCoordinator(opts *bind.TransactOpts, forger common.Address, coordinatorURL string) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setCoordinator", forger, coordinatorURL)
}
// SetCoordinator is a paid mutator transaction binding the contract method 0x0eeaf080.
//
// Solidity: function setCoordinator(address forger, string coordinatorURL) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetCoordinator(forger common.Address, coordinatorURL string) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetCoordinator(&_HermezAuctionProtocol.TransactOpts, forger, coordinatorURL)
}
// SetCoordinator is a paid mutator transaction binding the contract method 0x0eeaf080.
//
// Solidity: function setCoordinator(address forger, string coordinatorURL) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetCoordinator(forger common.Address, coordinatorURL string) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetCoordinator(&_HermezAuctionProtocol.TransactOpts, forger, coordinatorURL)
}
// SetDonationAddress is a paid mutator transaction binding the contract method 0x6f48e79b.
//
// Solidity: function setDonationAddress(address newDonationAddress) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetDonationAddress(opts *bind.TransactOpts, newDonationAddress common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setDonationAddress", newDonationAddress)
}
// SetDonationAddress is a paid mutator transaction binding the contract method 0x6f48e79b.
//
// Solidity: function setDonationAddress(address newDonationAddress) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetDonationAddress(newDonationAddress common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetDonationAddress(&_HermezAuctionProtocol.TransactOpts, newDonationAddress)
}
// SetDonationAddress is a paid mutator transaction binding the contract method 0x6f48e79b.
//
// Solidity: function setDonationAddress(address newDonationAddress) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetDonationAddress(newDonationAddress common.Address) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetDonationAddress(&_HermezAuctionProtocol.TransactOpts, newDonationAddress)
}
// SetOpenAuctionSlots is a paid mutator transaction binding the contract method 0xc63de515.
//
// Solidity: function setOpenAuctionSlots(uint16 newOpenAuctionSlots) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetOpenAuctionSlots(opts *bind.TransactOpts, newOpenAuctionSlots uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setOpenAuctionSlots", newOpenAuctionSlots)
}
// SetOpenAuctionSlots is a paid mutator transaction binding the contract method 0xc63de515.
//
// Solidity: function setOpenAuctionSlots(uint16 newOpenAuctionSlots) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetOpenAuctionSlots(newOpenAuctionSlots uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetOpenAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newOpenAuctionSlots)
}
// SetOpenAuctionSlots is a paid mutator transaction binding the contract method 0xc63de515.
//
// Solidity: function setOpenAuctionSlots(uint16 newOpenAuctionSlots) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetOpenAuctionSlots(newOpenAuctionSlots uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetOpenAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newOpenAuctionSlots)
}
// SetOutbidding is a paid mutator transaction binding the contract method 0xdfd5281b.
//
// Solidity: function setOutbidding(uint16 newOutbidding) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetOutbidding(opts *bind.TransactOpts, newOutbidding uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setOutbidding", newOutbidding)
}
// SetOutbidding is a paid mutator transaction binding the contract method 0xdfd5281b.
//
// Solidity: function setOutbidding(uint16 newOutbidding) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetOutbidding(newOutbidding uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetOutbidding(&_HermezAuctionProtocol.TransactOpts, newOutbidding)
}
// SetOutbidding is a paid mutator transaction binding the contract method 0xdfd5281b.
//
// Solidity: function setOutbidding(uint16 newOutbidding) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetOutbidding(newOutbidding uint16) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetOutbidding(&_HermezAuctionProtocol.TransactOpts, newOutbidding)
}
// SetSlotDeadline is a paid mutator transaction binding the contract method 0x87e6b6bb.
//
// Solidity: function setSlotDeadline(uint8 newDeadline) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetSlotDeadline(opts *bind.TransactOpts, newDeadline uint8) (*types.Transaction, error) {
return _HermezAuctionProtocol.contract.Transact(opts, "setSlotDeadline", newDeadline)
}
// SetSlotDeadline is a paid mutator transaction binding the contract method 0x87e6b6bb.
//
// Solidity: function setSlotDeadline(uint8 newDeadline) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetSlotDeadline(newDeadline uint8) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetSlotDeadline(&_HermezAuctionProtocol.TransactOpts, newDeadline)
}
// SetSlotDeadline is a paid mutator transaction binding the contract method 0x87e6b6bb.
//
// Solidity: function setSlotDeadline(uint8 newDeadline) returns()
func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetSlotDeadline(newDeadline uint8) (*types.Transaction, error) {
return _HermezAuctionProtocol.Contract.SetSlotDeadline(&_HermezAuctionProtocol.TransactOpts, newDeadline)
}
// HermezAuctionProtocolHEZClaimedIterator is returned from FilterHEZClaimed and is used to iterate over the raw logs and unpacked data for HEZClaimed events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolHEZClaimedIterator struct {
Event *HermezAuctionProtocolHEZClaimed // 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 *HermezAuctionProtocolHEZClaimedIterator) 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(HermezAuctionProtocolHEZClaimed)
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(HermezAuctionProtocolHEZClaimed)
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 *HermezAuctionProtocolHEZClaimedIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolHEZClaimedIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolHEZClaimed represents a HEZClaimed event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolHEZClaimed struct {
Owner common.Address
Amount *big.Int
Raw types.Log // Blockchain specific contextual infos
}
// FilterHEZClaimed is a free log retrieval operation binding the contract event 0x199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f.
//
// Solidity: event HEZClaimed(address indexed owner, uint128 amount)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterHEZClaimed(opts *bind.FilterOpts, owner []common.Address) (*HermezAuctionProtocolHEZClaimedIterator, error) {
var ownerRule []interface{}
for _, ownerItem := range owner {
ownerRule = append(ownerRule, ownerItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "HEZClaimed", ownerRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolHEZClaimedIterator{contract: _HermezAuctionProtocol.contract, event: "HEZClaimed", logs: logs, sub: sub}, nil
}
// WatchHEZClaimed is a free log subscription operation binding the contract event 0x199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f.
//
// Solidity: event HEZClaimed(address indexed owner, uint128 amount)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchHEZClaimed(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolHEZClaimed, owner []common.Address) (event.Subscription, error) {
var ownerRule []interface{}
for _, ownerItem := range owner {
ownerRule = append(ownerRule, ownerItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "HEZClaimed", ownerRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolHEZClaimed)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "HEZClaimed", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseHEZClaimed is a log parse operation binding the contract event 0x199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f.
//
// Solidity: event HEZClaimed(address indexed owner, uint128 amount)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseHEZClaimed(log types.Log) (*HermezAuctionProtocolHEZClaimed, error) {
event := new(HermezAuctionProtocolHEZClaimed)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "HEZClaimed", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewAllocationRatioIterator is returned from FilterNewAllocationRatio and is used to iterate over the raw logs and unpacked data for NewAllocationRatio events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewAllocationRatioIterator struct {
Event *HermezAuctionProtocolNewAllocationRatio // 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 *HermezAuctionProtocolNewAllocationRatioIterator) 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(HermezAuctionProtocolNewAllocationRatio)
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(HermezAuctionProtocolNewAllocationRatio)
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 *HermezAuctionProtocolNewAllocationRatioIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewAllocationRatioIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewAllocationRatio represents a NewAllocationRatio event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewAllocationRatio struct {
NewAllocationRatio [3]uint16
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewAllocationRatio is a free log retrieval operation binding the contract event 0x0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e4.
//
// Solidity: event NewAllocationRatio(uint16[3] newAllocationRatio)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewAllocationRatio(opts *bind.FilterOpts) (*HermezAuctionProtocolNewAllocationRatioIterator, error) {
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewAllocationRatio")
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewAllocationRatioIterator{contract: _HermezAuctionProtocol.contract, event: "NewAllocationRatio", logs: logs, sub: sub}, nil
}
// WatchNewAllocationRatio is a free log subscription operation binding the contract event 0x0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e4.
//
// Solidity: event NewAllocationRatio(uint16[3] newAllocationRatio)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewAllocationRatio(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewAllocationRatio) (event.Subscription, error) {
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewAllocationRatio")
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewAllocationRatio)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewAllocationRatio", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewAllocationRatio is a log parse operation binding the contract event 0x0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e4.
//
// Solidity: event NewAllocationRatio(uint16[3] newAllocationRatio)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewAllocationRatio(log types.Log) (*HermezAuctionProtocolNewAllocationRatio, error) {
event := new(HermezAuctionProtocolNewAllocationRatio)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewAllocationRatio", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewBidIterator is returned from FilterNewBid and is used to iterate over the raw logs and unpacked data for NewBid events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewBidIterator struct {
Event *HermezAuctionProtocolNewBid // 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 *HermezAuctionProtocolNewBidIterator) 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(HermezAuctionProtocolNewBid)
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(HermezAuctionProtocolNewBid)
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 *HermezAuctionProtocolNewBidIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewBidIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewBid represents a NewBid event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewBid struct {
Slot *big.Int
BidAmount *big.Int
Bidder common.Address
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewBid is a free log retrieval operation binding the contract event 0xd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e433.
//
// Solidity: event NewBid(uint128 indexed slot, uint128 bidAmount, address indexed bidder)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewBid(opts *bind.FilterOpts, slot []*big.Int, bidder []common.Address) (*HermezAuctionProtocolNewBidIterator, error) {
var slotRule []interface{}
for _, slotItem := range slot {
slotRule = append(slotRule, slotItem)
}
var bidderRule []interface{}
for _, bidderItem := range bidder {
bidderRule = append(bidderRule, bidderItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewBid", slotRule, bidderRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewBidIterator{contract: _HermezAuctionProtocol.contract, event: "NewBid", logs: logs, sub: sub}, nil
}
// WatchNewBid is a free log subscription operation binding the contract event 0xd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e433.
//
// Solidity: event NewBid(uint128 indexed slot, uint128 bidAmount, address indexed bidder)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewBid(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewBid, slot []*big.Int, bidder []common.Address) (event.Subscription, error) {
var slotRule []interface{}
for _, slotItem := range slot {
slotRule = append(slotRule, slotItem)
}
var bidderRule []interface{}
for _, bidderItem := range bidder {
bidderRule = append(bidderRule, bidderItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewBid", slotRule, bidderRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewBid)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBid", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewBid is a log parse operation binding the contract event 0xd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e433.
//
// Solidity: event NewBid(uint128 indexed slot, uint128 bidAmount, address indexed bidder)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewBid(log types.Log) (*HermezAuctionProtocolNewBid, error) {
event := new(HermezAuctionProtocolNewBid)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBid", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewBootCoordinatorIterator is returned from FilterNewBootCoordinator and is used to iterate over the raw logs and unpacked data for NewBootCoordinator events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewBootCoordinatorIterator struct {
Event *HermezAuctionProtocolNewBootCoordinator // 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 *HermezAuctionProtocolNewBootCoordinatorIterator) 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(HermezAuctionProtocolNewBootCoordinator)
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(HermezAuctionProtocolNewBootCoordinator)
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 *HermezAuctionProtocolNewBootCoordinatorIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewBootCoordinatorIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewBootCoordinator represents a NewBootCoordinator event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewBootCoordinator struct {
NewBootCoordinator common.Address
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewBootCoordinator is a free log retrieval operation binding the contract event 0x2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be55.
//
// Solidity: event NewBootCoordinator(address indexed newBootCoordinator)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewBootCoordinator(opts *bind.FilterOpts, newBootCoordinator []common.Address) (*HermezAuctionProtocolNewBootCoordinatorIterator, error) {
var newBootCoordinatorRule []interface{}
for _, newBootCoordinatorItem := range newBootCoordinator {
newBootCoordinatorRule = append(newBootCoordinatorRule, newBootCoordinatorItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewBootCoordinator", newBootCoordinatorRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewBootCoordinatorIterator{contract: _HermezAuctionProtocol.contract, event: "NewBootCoordinator", logs: logs, sub: sub}, nil
}
// WatchNewBootCoordinator is a free log subscription operation binding the contract event 0x2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be55.
//
// Solidity: event NewBootCoordinator(address indexed newBootCoordinator)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewBootCoordinator(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewBootCoordinator, newBootCoordinator []common.Address) (event.Subscription, error) {
var newBootCoordinatorRule []interface{}
for _, newBootCoordinatorItem := range newBootCoordinator {
newBootCoordinatorRule = append(newBootCoordinatorRule, newBootCoordinatorItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewBootCoordinator", newBootCoordinatorRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewBootCoordinator)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBootCoordinator", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewBootCoordinator is a log parse operation binding the contract event 0x2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be55.
//
// Solidity: event NewBootCoordinator(address indexed newBootCoordinator)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewBootCoordinator(log types.Log) (*HermezAuctionProtocolNewBootCoordinator, error) {
event := new(HermezAuctionProtocolNewBootCoordinator)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBootCoordinator", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewClosedAuctionSlotsIterator is returned from FilterNewClosedAuctionSlots and is used to iterate over the raw logs and unpacked data for NewClosedAuctionSlots events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewClosedAuctionSlotsIterator struct {
Event *HermezAuctionProtocolNewClosedAuctionSlots // 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 *HermezAuctionProtocolNewClosedAuctionSlotsIterator) 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(HermezAuctionProtocolNewClosedAuctionSlots)
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(HermezAuctionProtocolNewClosedAuctionSlots)
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 *HermezAuctionProtocolNewClosedAuctionSlotsIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewClosedAuctionSlotsIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewClosedAuctionSlots represents a NewClosedAuctionSlots event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewClosedAuctionSlots struct {
NewClosedAuctionSlots uint16
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewClosedAuctionSlots is a free log retrieval operation binding the contract event 0xc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea.
//
// Solidity: event NewClosedAuctionSlots(uint16 newClosedAuctionSlots)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewClosedAuctionSlots(opts *bind.FilterOpts) (*HermezAuctionProtocolNewClosedAuctionSlotsIterator, error) {
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewClosedAuctionSlots")
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewClosedAuctionSlotsIterator{contract: _HermezAuctionProtocol.contract, event: "NewClosedAuctionSlots", logs: logs, sub: sub}, nil
}
// WatchNewClosedAuctionSlots is a free log subscription operation binding the contract event 0xc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea.
//
// Solidity: event NewClosedAuctionSlots(uint16 newClosedAuctionSlots)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewClosedAuctionSlots(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewClosedAuctionSlots) (event.Subscription, error) {
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewClosedAuctionSlots")
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewClosedAuctionSlots)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewClosedAuctionSlots", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewClosedAuctionSlots is a log parse operation binding the contract event 0xc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea.
//
// Solidity: event NewClosedAuctionSlots(uint16 newClosedAuctionSlots)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewClosedAuctionSlots(log types.Log) (*HermezAuctionProtocolNewClosedAuctionSlots, error) {
event := new(HermezAuctionProtocolNewClosedAuctionSlots)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewClosedAuctionSlots", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewDefaultSlotSetBidIterator is returned from FilterNewDefaultSlotSetBid and is used to iterate over the raw logs and unpacked data for NewDefaultSlotSetBid events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewDefaultSlotSetBidIterator struct {
Event *HermezAuctionProtocolNewDefaultSlotSetBid // 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 *HermezAuctionProtocolNewDefaultSlotSetBidIterator) 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(HermezAuctionProtocolNewDefaultSlotSetBid)
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(HermezAuctionProtocolNewDefaultSlotSetBid)
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 *HermezAuctionProtocolNewDefaultSlotSetBidIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewDefaultSlotSetBidIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewDefaultSlotSetBid represents a NewDefaultSlotSetBid event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewDefaultSlotSetBid struct {
SlotSet *big.Int
NewInitialMinBid *big.Int
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewDefaultSlotSetBid is a free log retrieval operation binding the contract event 0xa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172.
//
// Solidity: event NewDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewDefaultSlotSetBid(opts *bind.FilterOpts) (*HermezAuctionProtocolNewDefaultSlotSetBidIterator, error) {
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewDefaultSlotSetBid")
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewDefaultSlotSetBidIterator{contract: _HermezAuctionProtocol.contract, event: "NewDefaultSlotSetBid", logs: logs, sub: sub}, nil
}
// WatchNewDefaultSlotSetBid is a free log subscription operation binding the contract event 0xa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172.
//
// Solidity: event NewDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewDefaultSlotSetBid(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewDefaultSlotSetBid) (event.Subscription, error) {
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewDefaultSlotSetBid")
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewDefaultSlotSetBid)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDefaultSlotSetBid", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewDefaultSlotSetBid is a log parse operation binding the contract event 0xa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172.
//
// Solidity: event NewDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewDefaultSlotSetBid(log types.Log) (*HermezAuctionProtocolNewDefaultSlotSetBid, error) {
event := new(HermezAuctionProtocolNewDefaultSlotSetBid)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDefaultSlotSetBid", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewDonationAddressIterator is returned from FilterNewDonationAddress and is used to iterate over the raw logs and unpacked data for NewDonationAddress events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewDonationAddressIterator struct {
Event *HermezAuctionProtocolNewDonationAddress // 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 *HermezAuctionProtocolNewDonationAddressIterator) 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(HermezAuctionProtocolNewDonationAddress)
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(HermezAuctionProtocolNewDonationAddress)
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 *HermezAuctionProtocolNewDonationAddressIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewDonationAddressIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewDonationAddress represents a NewDonationAddress event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewDonationAddress struct {
NewDonationAddress common.Address
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewDonationAddress is a free log retrieval operation binding the contract event 0xa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd7.
//
// Solidity: event NewDonationAddress(address indexed newDonationAddress)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewDonationAddress(opts *bind.FilterOpts, newDonationAddress []common.Address) (*HermezAuctionProtocolNewDonationAddressIterator, error) {
var newDonationAddressRule []interface{}
for _, newDonationAddressItem := range newDonationAddress {
newDonationAddressRule = append(newDonationAddressRule, newDonationAddressItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewDonationAddress", newDonationAddressRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewDonationAddressIterator{contract: _HermezAuctionProtocol.contract, event: "NewDonationAddress", logs: logs, sub: sub}, nil
}
// WatchNewDonationAddress is a free log subscription operation binding the contract event 0xa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd7.
//
// Solidity: event NewDonationAddress(address indexed newDonationAddress)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewDonationAddress(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewDonationAddress, newDonationAddress []common.Address) (event.Subscription, error) {
var newDonationAddressRule []interface{}
for _, newDonationAddressItem := range newDonationAddress {
newDonationAddressRule = append(newDonationAddressRule, newDonationAddressItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewDonationAddress", newDonationAddressRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewDonationAddress)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDonationAddress", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewDonationAddress is a log parse operation binding the contract event 0xa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd7.
//
// Solidity: event NewDonationAddress(address indexed newDonationAddress)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewDonationAddress(log types.Log) (*HermezAuctionProtocolNewDonationAddress, error) {
event := new(HermezAuctionProtocolNewDonationAddress)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDonationAddress", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewForgeIterator is returned from FilterNewForge and is used to iterate over the raw logs and unpacked data for NewForge events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewForgeIterator struct {
Event *HermezAuctionProtocolNewForge // 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 *HermezAuctionProtocolNewForgeIterator) 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(HermezAuctionProtocolNewForge)
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(HermezAuctionProtocolNewForge)
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 *HermezAuctionProtocolNewForgeIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewForgeIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewForge represents a NewForge event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewForge struct {
Forger common.Address
SlotToForge *big.Int
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewForge is a free log retrieval operation binding the contract event 0x7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad238.
//
// Solidity: event NewForge(address indexed forger, uint128 indexed slotToForge)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewForge(opts *bind.FilterOpts, forger []common.Address, slotToForge []*big.Int) (*HermezAuctionProtocolNewForgeIterator, error) {
var forgerRule []interface{}
for _, forgerItem := range forger {
forgerRule = append(forgerRule, forgerItem)
}
var slotToForgeRule []interface{}
for _, slotToForgeItem := range slotToForge {
slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewForge", forgerRule, slotToForgeRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewForgeIterator{contract: _HermezAuctionProtocol.contract, event: "NewForge", logs: logs, sub: sub}, nil
}
// WatchNewForge is a free log subscription operation binding the contract event 0x7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad238.
//
// Solidity: event NewForge(address indexed forger, uint128 indexed slotToForge)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewForge(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewForge, forger []common.Address, slotToForge []*big.Int) (event.Subscription, error) {
var forgerRule []interface{}
for _, forgerItem := range forger {
forgerRule = append(forgerRule, forgerItem)
}
var slotToForgeRule []interface{}
for _, slotToForgeItem := range slotToForge {
slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewForge", forgerRule, slotToForgeRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewForge)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForge", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewForge is a log parse operation binding the contract event 0x7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad238.
//
// Solidity: event NewForge(address indexed forger, uint128 indexed slotToForge)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewForge(log types.Log) (*HermezAuctionProtocolNewForge, error) {
event := new(HermezAuctionProtocolNewForge)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForge", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewForgeAllocatedIterator is returned from FilterNewForgeAllocated and is used to iterate over the raw logs and unpacked data for NewForgeAllocated events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewForgeAllocatedIterator struct {
Event *HermezAuctionProtocolNewForgeAllocated // 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 *HermezAuctionProtocolNewForgeAllocatedIterator) 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(HermezAuctionProtocolNewForgeAllocated)
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(HermezAuctionProtocolNewForgeAllocated)
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 *HermezAuctionProtocolNewForgeAllocatedIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewForgeAllocatedIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewForgeAllocated represents a NewForgeAllocated event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewForgeAllocated struct {
Bidder common.Address
Forger common.Address
SlotToForge *big.Int
BurnAmount *big.Int
DonationAmount *big.Int
GovernanceAmount *big.Int
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewForgeAllocated is a free log retrieval operation binding the contract event 0xd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05.
//
// Solidity: event NewForgeAllocated(address indexed bidder, address indexed forger, uint128 indexed slotToForge, uint128 burnAmount, uint128 donationAmount, uint128 governanceAmount)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewForgeAllocated(opts *bind.FilterOpts, bidder []common.Address, forger []common.Address, slotToForge []*big.Int) (*HermezAuctionProtocolNewForgeAllocatedIterator, error) {
var bidderRule []interface{}
for _, bidderItem := range bidder {
bidderRule = append(bidderRule, bidderItem)
}
var forgerRule []interface{}
for _, forgerItem := range forger {
forgerRule = append(forgerRule, forgerItem)
}
var slotToForgeRule []interface{}
for _, slotToForgeItem := range slotToForge {
slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewForgeAllocated", bidderRule, forgerRule, slotToForgeRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewForgeAllocatedIterator{contract: _HermezAuctionProtocol.contract, event: "NewForgeAllocated", logs: logs, sub: sub}, nil
}
// WatchNewForgeAllocated is a free log subscription operation binding the contract event 0xd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05.
//
// Solidity: event NewForgeAllocated(address indexed bidder, address indexed forger, uint128 indexed slotToForge, uint128 burnAmount, uint128 donationAmount, uint128 governanceAmount)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewForgeAllocated(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewForgeAllocated, bidder []common.Address, forger []common.Address, slotToForge []*big.Int) (event.Subscription, error) {
var bidderRule []interface{}
for _, bidderItem := range bidder {
bidderRule = append(bidderRule, bidderItem)
}
var forgerRule []interface{}
for _, forgerItem := range forger {
forgerRule = append(forgerRule, forgerItem)
}
var slotToForgeRule []interface{}
for _, slotToForgeItem := range slotToForge {
slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewForgeAllocated", bidderRule, forgerRule, slotToForgeRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewForgeAllocated)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForgeAllocated", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewForgeAllocated is a log parse operation binding the contract event 0xd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05.
//
// Solidity: event NewForgeAllocated(address indexed bidder, address indexed forger, uint128 indexed slotToForge, uint128 burnAmount, uint128 donationAmount, uint128 governanceAmount)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewForgeAllocated(log types.Log) (*HermezAuctionProtocolNewForgeAllocated, error) {
event := new(HermezAuctionProtocolNewForgeAllocated)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForgeAllocated", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewOpenAuctionSlotsIterator is returned from FilterNewOpenAuctionSlots and is used to iterate over the raw logs and unpacked data for NewOpenAuctionSlots events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewOpenAuctionSlotsIterator struct {
Event *HermezAuctionProtocolNewOpenAuctionSlots // 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 *HermezAuctionProtocolNewOpenAuctionSlotsIterator) 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(HermezAuctionProtocolNewOpenAuctionSlots)
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(HermezAuctionProtocolNewOpenAuctionSlots)
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 *HermezAuctionProtocolNewOpenAuctionSlotsIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewOpenAuctionSlotsIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewOpenAuctionSlots represents a NewOpenAuctionSlots event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewOpenAuctionSlots struct {
NewOpenAuctionSlots uint16
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewOpenAuctionSlots is a free log retrieval operation binding the contract event 0x3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f1.
//
// Solidity: event NewOpenAuctionSlots(uint16 newOpenAuctionSlots)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewOpenAuctionSlots(opts *bind.FilterOpts) (*HermezAuctionProtocolNewOpenAuctionSlotsIterator, error) {
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewOpenAuctionSlots")
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewOpenAuctionSlotsIterator{contract: _HermezAuctionProtocol.contract, event: "NewOpenAuctionSlots", logs: logs, sub: sub}, nil
}
// WatchNewOpenAuctionSlots is a free log subscription operation binding the contract event 0x3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f1.
//
// Solidity: event NewOpenAuctionSlots(uint16 newOpenAuctionSlots)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewOpenAuctionSlots(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewOpenAuctionSlots) (event.Subscription, error) {
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewOpenAuctionSlots")
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewOpenAuctionSlots)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOpenAuctionSlots", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewOpenAuctionSlots is a log parse operation binding the contract event 0x3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f1.
//
// Solidity: event NewOpenAuctionSlots(uint16 newOpenAuctionSlots)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewOpenAuctionSlots(log types.Log) (*HermezAuctionProtocolNewOpenAuctionSlots, error) {
event := new(HermezAuctionProtocolNewOpenAuctionSlots)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOpenAuctionSlots", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewOutbiddingIterator is returned from FilterNewOutbidding and is used to iterate over the raw logs and unpacked data for NewOutbidding events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewOutbiddingIterator struct {
Event *HermezAuctionProtocolNewOutbidding // 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 *HermezAuctionProtocolNewOutbiddingIterator) 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(HermezAuctionProtocolNewOutbidding)
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(HermezAuctionProtocolNewOutbidding)
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 *HermezAuctionProtocolNewOutbiddingIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewOutbiddingIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewOutbidding represents a NewOutbidding event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewOutbidding struct {
NewOutbidding uint16
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewOutbidding is a free log retrieval operation binding the contract event 0xd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e.
//
// Solidity: event NewOutbidding(uint16 newOutbidding)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewOutbidding(opts *bind.FilterOpts) (*HermezAuctionProtocolNewOutbiddingIterator, error) {
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewOutbidding")
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewOutbiddingIterator{contract: _HermezAuctionProtocol.contract, event: "NewOutbidding", logs: logs, sub: sub}, nil
}
// WatchNewOutbidding is a free log subscription operation binding the contract event 0xd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e.
//
// Solidity: event NewOutbidding(uint16 newOutbidding)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewOutbidding(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewOutbidding) (event.Subscription, error) {
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewOutbidding")
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewOutbidding)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOutbidding", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewOutbidding is a log parse operation binding the contract event 0xd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e.
//
// Solidity: event NewOutbidding(uint16 newOutbidding)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewOutbidding(log types.Log) (*HermezAuctionProtocolNewOutbidding, error) {
event := new(HermezAuctionProtocolNewOutbidding)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOutbidding", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolNewSlotDeadlineIterator is returned from FilterNewSlotDeadline and is used to iterate over the raw logs and unpacked data for NewSlotDeadline events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewSlotDeadlineIterator struct {
Event *HermezAuctionProtocolNewSlotDeadline // 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 *HermezAuctionProtocolNewSlotDeadlineIterator) 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(HermezAuctionProtocolNewSlotDeadline)
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(HermezAuctionProtocolNewSlotDeadline)
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 *HermezAuctionProtocolNewSlotDeadlineIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolNewSlotDeadlineIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolNewSlotDeadline represents a NewSlotDeadline event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolNewSlotDeadline struct {
NewSlotDeadline uint8
Raw types.Log // Blockchain specific contextual infos
}
// FilterNewSlotDeadline is a free log retrieval operation binding the contract event 0x4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d3.
//
// Solidity: event NewSlotDeadline(uint8 newSlotDeadline)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewSlotDeadline(opts *bind.FilterOpts) (*HermezAuctionProtocolNewSlotDeadlineIterator, error) {
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewSlotDeadline")
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolNewSlotDeadlineIterator{contract: _HermezAuctionProtocol.contract, event: "NewSlotDeadline", logs: logs, sub: sub}, nil
}
// WatchNewSlotDeadline is a free log subscription operation binding the contract event 0x4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d3.
//
// Solidity: event NewSlotDeadline(uint8 newSlotDeadline)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewSlotDeadline(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewSlotDeadline) (event.Subscription, error) {
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewSlotDeadline")
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolNewSlotDeadline)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewSlotDeadline", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseNewSlotDeadline is a log parse operation binding the contract event 0x4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d3.
//
// Solidity: event NewSlotDeadline(uint8 newSlotDeadline)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewSlotDeadline(log types.Log) (*HermezAuctionProtocolNewSlotDeadline, error) {
event := new(HermezAuctionProtocolNewSlotDeadline)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewSlotDeadline", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}
// HermezAuctionProtocolSetCoordinatorIterator is returned from FilterSetCoordinator and is used to iterate over the raw logs and unpacked data for SetCoordinator events raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolSetCoordinatorIterator struct {
Event *HermezAuctionProtocolSetCoordinator // 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 *HermezAuctionProtocolSetCoordinatorIterator) 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(HermezAuctionProtocolSetCoordinator)
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(HermezAuctionProtocolSetCoordinator)
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 *HermezAuctionProtocolSetCoordinatorIterator) Error() error {
return it.fail
}
// Close terminates the iteration process, releasing any pending underlying
// resources.
func (it *HermezAuctionProtocolSetCoordinatorIterator) Close() error {
it.sub.Unsubscribe()
return nil
}
// HermezAuctionProtocolSetCoordinator represents a SetCoordinator event raised by the HermezAuctionProtocol contract.
type HermezAuctionProtocolSetCoordinator struct {
Bidder common.Address
Forger common.Address
CoordinatorURL string
Raw types.Log // Blockchain specific contextual infos
}
// FilterSetCoordinator is a free log retrieval operation binding the contract event 0x5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0.
//
// Solidity: event SetCoordinator(address indexed bidder, address indexed forger, string coordinatorURL)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterSetCoordinator(opts *bind.FilterOpts, bidder []common.Address, forger []common.Address) (*HermezAuctionProtocolSetCoordinatorIterator, error) {
var bidderRule []interface{}
for _, bidderItem := range bidder {
bidderRule = append(bidderRule, bidderItem)
}
var forgerRule []interface{}
for _, forgerItem := range forger {
forgerRule = append(forgerRule, forgerItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "SetCoordinator", bidderRule, forgerRule)
if err != nil {
return nil, tracerr.Wrap(err)
}
return &HermezAuctionProtocolSetCoordinatorIterator{contract: _HermezAuctionProtocol.contract, event: "SetCoordinator", logs: logs, sub: sub}, nil
}
// WatchSetCoordinator is a free log subscription operation binding the contract event 0x5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0.
//
// Solidity: event SetCoordinator(address indexed bidder, address indexed forger, string coordinatorURL)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchSetCoordinator(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolSetCoordinator, bidder []common.Address, forger []common.Address) (event.Subscription, error) {
var bidderRule []interface{}
for _, bidderItem := range bidder {
bidderRule = append(bidderRule, bidderItem)
}
var forgerRule []interface{}
for _, forgerItem := range forger {
forgerRule = append(forgerRule, forgerItem)
}
logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "SetCoordinator", bidderRule, forgerRule)
if err != nil {
return nil, tracerr.Wrap(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(HermezAuctionProtocolSetCoordinator)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "SetCoordinator", log); err != nil {
return tracerr.Wrap(err)
}
event.Raw = log
select {
case sink <- event:
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
case err := <-sub.Err():
return tracerr.Wrap(err)
case <-quit:
return nil
}
}
}), nil
}
// ParseSetCoordinator is a log parse operation binding the contract event 0x5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0.
//
// Solidity: event SetCoordinator(address indexed bidder, address indexed forger, string coordinatorURL)
func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseSetCoordinator(log types.Log) (*HermezAuctionProtocolSetCoordinator, error) {
event := new(HermezAuctionProtocolSetCoordinator)
if err := _HermezAuctionProtocol.contract.UnpackLog(event, "SetCoordinator", log); err != nil {
return nil, tracerr.Wrap(err)
}
return event, nil
}