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.

2936 lines
164 KiB

  1. // Code generated - DO NOT EDIT.
  2. // This file is a generated binding and any manual changes will be lost.
  3. package HermezAuctionProtocol
  4. import (
  5. "math/big"
  6. "strings"
  7. ethereum "github.com/ethereum/go-ethereum"
  8. "github.com/ethereum/go-ethereum/accounts/abi"
  9. "github.com/ethereum/go-ethereum/accounts/abi/bind"
  10. "github.com/ethereum/go-ethereum/common"
  11. "github.com/ethereum/go-ethereum/core/types"
  12. "github.com/ethereum/go-ethereum/event"
  13. )
  14. // Reference imports to suppress errors if they are not otherwise used.
  15. var (
  16. _ = big.NewInt
  17. _ = strings.NewReader
  18. _ = ethereum.NotFound
  19. _ = bind.Bind
  20. _ = common.Big1
  21. _ = types.BloomLookup
  22. _ = event.NewSubscription
  23. )
  24. // HermezAuctionProtocolABI is the input ABI used to generate the binding from.
  25. 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\"}]"
  26. // HermezAuctionProtocolBin is the compiled bytecode used for deploying new contracts.
  27. var HermezAuctionProtocolBin = "0x608060405234801561001057600080fd5b50613b33806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c806379a135e311610125578063b3dc7bb1116100ad578063d92bdda31161007c578063d92bdda314610891578063dfd5281b146108b2578063e6065914146108d3578063ec29159b146108db578063ecdae41b1461091b5761021c565b8063b3dc7bb1146107e3578063b5f7f2f014610809578063bc41556714610811578063c63de515146108705761021c565b806387e6b6bb116100f457806387e6b6bb146106df578063a48af096146106ff578063ac4b9012146107ad578063ac5f658b146107b5578063aebd6d98146107db5761021c565b806379a135e3146106175780637c643b701461061f578063827874051461064d57806383b1f6a01461069f5761021c565b806354c03ab7116101a85780635cca4903116101775780635cca4903146105485780636074db641461056e57806362945af2146105c35780636dfe47c9146105e95780636f48e79b146105f15761021c565b806354c03ab71461042357806355b442e614610447578063564e6a711461044f578063583ad0dd1461046f5761021c565b806337d1bd0b116101ef57806337d1bd0b146103215780634b93b7fa146103475780634cdc9c63146103d65780634da9639d146103de5780634e5a5178146103fd5761021c565b80630c4da4f6146102215780630eeaf0801461024557806313de9af2146102fb5780632243de4714610319575b600080fd5b610229610941565b604080516001600160801b039092168252519081900360200190f35b6102f96004803603604081101561025b57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111600160201b831117156102b857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610951945050505050565b005b610303610a42565b6040805160ff9092168252519081900360200190f35b610303610a51565b6102296004803603602081101561033757600080fd5b50356001600160801b0316610a56565b6102f96004803603608081101561035d57600080fd5b6001600160801b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561039857600080fd5b8201836020820111156103aa57600080fd5b803590602001918460018302840111600160201b831117156103cb57600080fd5b509092509050610bfb565b610229610f05565b6103e6610f14565b6040805161ffff9092168252519081900360200190f35b6102f96004803603602081101561041357600080fd5b50356001600160a01b0316610f25565b61042b61145a565b604080516001600160a01b039092168252519081900360200190f35b6103e6611469565b6102296004803603602081101561046557600080fd5b503560ff16611473565b6102f9600480360361018081101561048657600080fd5b6040805160c081810183526001600160801b038535811695602081013582169594810135909116938101929091610120830191906060840190600690839083908082843760009201919091525091946001600160801b0384358116956020860135909116949193509150606081019060400135600160201b81111561050a57600080fd5b82018360208201111561051c57600080fd5b803590602001918460018302840111600160201b8311171561053d57600080fd5b5090925090506114ab565b6102296004803603602081101561055e57600080fd5b50356001600160a01b031661188d565b6102f9600480360360c081101561058457600080fd5b506001600160a01b0381358116916001600160801b036020820135169160408201358116916060810135821691608082013581169160a00135166118b1565b6102f9600480360360208110156105d957600080fd5b50356001600160a01b0316611af2565b6102f9611b8b565b6102f96004803603602081101561060757600080fd5b50356001600160a01b0316611d6f565b61042b611e08565b6102f96004803603604081101561063557600080fd5b506001600160801b0381358116916020013516611e17565b6102f96004803603606081101561066357600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091945061207b9350505050565b6106cb600480360360408110156106b557600080fd5b506001600160a01b0381351690602001356121a8565b604080519115158252519081900360200190f35b6102f9600480360360208110156106f557600080fd5b503560ff1661246d565b6107256004803603602081101561071557600080fd5b50356001600160a01b0316612553565b60405180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610771578181015183820152602001610759565b50505050905090810190601f16801561079e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6103e6612607565b610229600480360360208110156107cb57600080fd5b50356001600160801b0316612618565b61042b61262e565b610229600480360360208110156107f957600080fd5b50356001600160801b031661263d565b61042b612677565b6108376004803603602081101561082757600080fd5b50356001600160801b0316612686565b604080516001600160a01b03909516855292151560208501526001600160801b0391821684840152166060830152519081900360800190f35b6102f96004803603602081101561088657600080fd5b503561ffff166126c9565b6102f9600480360360208110156108a757600080fd5b503561ffff166127c0565b6102f9600480360360208110156108c857600080fd5b503561ffff166128b7565b610229612950565b6108e361295c565b6040518082606080838360005b838110156109085781810151838201526020016108f0565b5050505090500191505060405180910390f35b6102296004803603602081101561093157600080fd5b50356001600160a01b03166129be565b600061094c4361263d565b905090565b33600090815260726020908152604090912080546001600160a01b0319166001600160a01b0385161781558251610990926001909201918401906131db565b50816001600160a01b0316336001600160a01b03167f5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0836040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a045781810151838201526020016109ec565b50505050905090810190601f168015610a315780820380516001836020036101000a031916815260200191505b509250505060405180910390a35050565b606f5462010000900460ff1690565b602881565b606d54600090600160801b900461ffff16610a6f610941565b016001600160801b0316826001600160801b03161015610ac05760405162461bcd60e51b81526004018080602001828103825260368152602001806135f56036913960400191505060405180910390fd5b6000610acb83612618565b6001600160801b038085166000908152607060205260409020600101549192501615610b6557606f546001600160801b03808516600090815260706020526040902060010154610b6092610b3c9261271092610b2d9291169061ffff166129d9565b6001600160801b031690612a53565b6001600160801b038086166000908152607060205260409020600101541690612a95565b610bf4565b606f54610bf490610bb89061271090610b2d9061ffff16606a6001600160801b03871660068110610b9257fe5b60028104919091015460019091166010026101000a90046001600160801b0316906129d9565b606a836001600160801b031660068110610bce57fe5b60028104919091015460019091166010026101000a90046001600160801b031690612a95565b9392505050565b336000908152607260205260409020546001600160a01b0316610c4f5760405162461bcd60e51b815260040180806020018281038252603d815260200180613421603d913960400191505060405180910390fd5b606d54600160801b900461ffff16610c65610941565b016001600160801b0316846001600160801b03161015610cb65760405162461bcd60e51b8152600401808060200182810382526031815260200180613a256031913960400191505060405180910390fd5b610cbf84610a56565b6001600160801b0316836001600160801b03161015610d0f5760405162461bcd60e51b81526004018080602001828103825260308152602001806135586030913960400191505060405180910390fd5b606d5461ffff600160901b8204811691600160801b900416610d2f610941565b01016001600160801b0316846001600160801b031610610d805760405162461bcd60e51b81526004018080602001828103825260338152602001806138046033913960400191505060405180910390fd5b8015610d9a57610d9a856001600160801b03168383612afb565b606554604080516323b872dd60e01b81523360048201523060248201526001600160801b038816604482015290516001600160a01b03909216916323b872dd916064808201926020929091908290030181600087803b158015610dfc57600080fd5b505af1158015610e10573d6000803e3d6000fd5b505050506040513d6020811015610e2657600080fd5b5051610e635760405162461bcd60e51b81526004018080602001828103825260388152602001806135886038913960400191505060405180910390fd5b33600090815260716020526040902054610e86906001600160801b031686612a95565b33600090815260716020526040902080546001600160801b0319166001600160801b03928316179081905584821691161015610ef35760405162461bcd60e51b81526004018080602001828103825260338152602001806138046033913960400191505060405180910390fd5b610efe848433612d65565b5050505050565b606d546001600160801b031681565b606d54600160801b900461ffff1690565b6066546001600160a01b03163314610f6e5760405162461bcd60e51b815260040180806020018281038252603081526020018061388b6030913960400191505060405180910390fd5b610f7881436121a8565b610fb35760405162461bcd60e51b815260040180806020018281038252602a81526020018061391f602a913960400191505060405180910390fd5b6000610fbd610941565b6001600160801b0381811660009081526070602052604081208054600190910154939450600160a01b900460ff16929091600160801b9091041615611026576001600160801b03808416600090815260706020526040902060010154600160801b900416611064565b606a61103184612618565b6001600160801b03166006811061104457fe5b600291828204019190066010029054906101000a90046001600160801b03165b905081611415576001600160801b0383166000908152607060205260409020805460ff60a01b1916600160a01b1790556069546001600160a01b039081169085161480156110ce57506001600160801b038084166000908152607060205260409020600101541615155b80156110f957506001600160801b038381166000908152607060205260409020600101548183169116105b1561119e576001600160801b0383811660009081526070602090815260408083206001810180548616600160801b88881602179081905590546001600160a01b03168452607190925290912054611154929081169116612a95565b6001600160801b038481166000908152607060209081526040808320546001600160a01b031683526071909152902080546001600160801b03191692909116919091179055611415565b6069546001600160a01b03858116911614611415576001600160801b03838116600090815260706020526040812060010180548316600160801b81021790819055606e5491926111fb9261271092610b2d92169061ffff166129d9565b606e546001600160801b038681166000908152607060205260408120600101549394509261123c9261271092610b2d92169062010000900461ffff166129d9565b606e546001600160801b038781166000908152607060205260408120600101549394509261127e9261271092610b2d921690600160201b900461ffff166129d9565b60655460408051630852cd8d60e31b81526001600160801b038716600482015290519293506001600160a01b03909116916342966c68916024808201926020929091908290030181600087803b1580156112d757600080fd5b505af11580156112eb573d6000803e3d6000fd5b505050506040513d602081101561130157600080fd5b50506068546001600160a01b0316600090815260716020526040902054611331906001600160801b031683612a95565b6068546001600160a01b0390811660009081526071602052604080822080546001600160801b0319166001600160801b039586161790556067549092168152205461137d911682612a95565b6067546001600160a01b03908116600090815260716020908152604080832080546001600160801b0319166001600160801b039687161790558a85168084526070835292819020548151898716815288871693810193909352948616828201525191938b84169316917fd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05916060908290030190a45050505b6040516001600160801b038416906001600160a01b038616907f7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad23890600090a350505050565b6068546001600160a01b031690565b606f5461ffff1690565b6000606a8260ff166006811061148557fe5b600291828204019190066010029054906101000a90046001600160801b03169050919050565b606d54600160801b900461ffff166114c1610941565b016001600160801b0316876001600160801b031610156115125760405162461bcd60e51b81526004018080602001828103825260358152602001806135c06035913960400191505060405180910390fd5b606d5461ffff600160901b8204811691600160801b900416611532610941565b01016001600160801b0316866001600160801b0316106115835760405162461bcd60e51b81526004018080602001828103825260378152602001806139b86037913960400191505060405180910390fd5b826001600160801b0316846001600160801b031610156115d45760405162461bcd60e51b815260040180806020018281038252604181526020018061362b6041913960600191505060405180910390fd5b336000908152607260205260409020546001600160a01b03166116285760405162461bcd60e51b8152600401808060200182810382526041815260200180613a566041913960600191505060405180910390fd5b801561164257611642886001600160801b03168383612afb565b606554604080516323b872dd60e01b81523360048201523060248201526001600160801b038b16604482015290516001600160a01b03909216916323b872dd916064808201926020929091908290030181600087803b1580156116a457600080fd5b505af11580156116b8573d6000803e3d6000fd5b505050506040513d60208110156116ce57600080fd5b505161170b5760405162461bcd60e51b815260040180806020018281038252603d81526020018061345e603d913960400191505060405180910390fd5b3360009081526071602052604090205461172e906001600160801b031689612a95565b33600090815260716020526040812080546001600160801b0319166001600160801b039390931692909217909155875b876001600160801b0316816001600160801b03161161188157600061178282610a56565b9050856001600160801b0316816001600160801b0316116117a5578592506117eb565b856001600160801b0316816001600160801b03161180156117d85750866001600160801b0316816001600160801b031611155b156117e5578092506117eb565b50611879565b876117f583612618565b6001600160801b03166006811061180857fe5b60200201511561187757336000908152607160205260409020546001600160801b038085169116101561186c5760405162461bcd60e51b815260040180806020018281038252603981526020018061397f6039913960400191505060405180910390fd5b611877828433612d65565b505b60010161175e565b50505050505050505050565b6001600160a01b03166000908152607160205260409020546001600160801b031690565b600054610100900460ff16806118ca57506118ca612efb565b806118d8575060005460ff16155b6119135760405162461bcd60e51b815260040180806020018281038252602e8152602001806138bb602e913960400191505060405180910390fd5b600054610100900460ff1615801561193e576000805460ff1961ff0019909116610100171660011790555b611946612f01565b606f80546103e861ffff199091161762ff0000191662140000179055606d805461ffff60801b1916600160811b1761ffff60901b1916608760951b17905560408051606081018252610fa080825260208201526107d0918101919091526119b190606e906003613259565b506040805160c081018252678ac7230489e8000080825260208201819052918101829052606081018290526080810182905260a08101919091526119f990606a9060066132eb565b50606580546001600160a01b0319166001600160a01b038916179055606d54600160801b900461ffff9081166028021643016001600160801b0387161015611a725760405162461bcd60e51b815260040180806020018281038252604d8152602001806136f3604d913960600191505060405180910390fd5b606d80546001600160801b0319166001600160801b038816179055606680546001600160a01b03199081166001600160a01b0388811691909117909255606780548216878416179055606880548216868416179055606980549091169184169190911790558015611ae9576000805461ff00191690555b50505050505050565b6067546001600160a01b03163314611b3b5760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b606980546001600160a01b0319166001600160a01b0383811691909117918290556040519116907f2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be5590600090a250565b60335460ff16611be2576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6033805460ff191690556000611bf73361188d565b90506000816001600160801b031611611c415760405162461bcd60e51b81526004018080602001828103825260338152602001806138376033913960400191505060405180910390fd5b33600081815260716020908152604080832080546001600160801b0319169055606554815163a9059cbb60e01b815260048101959095526001600160801b038616602486015290516001600160a01b039091169363a9059cbb9360448083019493928390030190829087803b158015611cb957600080fd5b505af1158015611ccd573d6000803e3d6000fd5b505050506040513d6020811015611ce357600080fd5b5051611d205760405162461bcd60e51b81526004018080602001828103825260368152602001806139496036913960400191505060405180910390fd5b604080516001600160801b0383168152905133917f199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f919081900360200190a2506033805460ff19166001179055565b6067546001600160a01b03163314611db85760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b606880546001600160a01b0319166001600160a01b0383811691909117918290556040519116907fa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd790600090a250565b6065546001600160a01b031681565b6067546001600160a01b03163314611e605760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b6006826001600160801b03161115611ea95760405162461bcd60e51b81526004018080602001828103825260428152602001806134c76042913960600191505060405180910390fd5b606a826001600160801b031660068110611ebf57fe5b60028104919091015460019091166010026101000a90046001600160801b0316611f1a5760405162461bcd60e51b815260040180806020018281038252604281526020018061366c6042913960600191505060405180910390fd5b6000611f24610941565b9050805b606d54600160801b900461ffff1682016001600160801b0390811690821611611fde576001600160801b03808216600090815260706020526040902060010154600160801b900416611fd657606a611f7f82612618565b6001600160801b031660068110611f9257fe5b6002810491909101546001600160801b038381166000908152607060205260409020600190810180548316919094166010026101000a90920416600160801b021790555b600101611f28565b5081606a846001600160801b031660068110611ff657fe5b600291828204019190066010026101000a8154816001600160801b0302191690836001600160801b031602179055507fa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172838360405180836001600160801b03168152602001826001600160801b031681526020019250505060405180910390a1505050565b6067546001600160a01b031633146120c45760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b806002602002015181600160200201518260006020020151010161ffff16612710146121215760405162461bcd60e51b81526004018080602001828103825260458152602001806136ae6045913960600191505060405180910390fd5b61212e606e826003613259565b506040517f0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e490606e9060608101826000835b82829054906101000a900461ffff1661ffff1681526020019060020190602082600101049283019260010382029150808411612160579050505091505060405180910390a150565b6000600160801b82106121ec5760405162461bcd60e51b8152600401808060200182810382526031815260200180613a976031913960400191505060405180910390fd5b606d546001600160801b03168210156122365760405162461bcd60e51b81526004018080602001828103825260338152602001806137d16033913960400191505060405180910390fd5b60006122418361263d565b606d5490915060009061228a9061227a906001600160801b039081169061226b90861660286129d9565b6001600160801b031690612a95565b6001600160801b03861690612fb0565b6001600160801b0380841660009081526070602052604081206001015492935091600160801b900416156122e2576001600160801b03808416600090815260706020526040902060010154600160801b900416612320565b606a6122ed84612618565b6001600160801b03166006811061230057fe5b600291828204019190066010029054906101000a90046001600160801b03165b6001600160801b038416600090815260706020526040902054909150600160a01b900460ff161580156123675750606f5462010000900460ff166001600160801b03831610155b156123785760019350505050612467565b6001600160801b0383166000908152607060209081526040808320546001600160a01b03908116845260729092529091205481169087161480156123dc57506001600160801b03838116600090815260706020526040902060010154818316911610155b156123ed5760019350505050612467565b6069546001600160a01b03878116911614801561244e57506001600160801b038381166000908152607060205260409020600101548183169116108061244e57506001600160801b0380841660009081526070602052604090206001015416155b1561245f5760019350505050612467565b600093505050505b92915050565b6067546001600160a01b031633146124b65760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b602860ff821611156124f95760405162461bcd60e51b81526004018080602001828103825260448152602001806137406044913960600191505060405180910390fd5b606f805460ff8084166201000090810262ff0000199093169290921792839055604080519290930416815290517f4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d39181900360200190a150565b6072602090815260009182526040918290208054600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582526001600160a01b039092169492939092908301828280156125fd5780601f106125d2576101008083540402835291602001916125fd565b820191906000526020600020905b8154815290600101906020018083116125e057829003601f168201915b5050505050905082565b606d54600160901b900461ffff1690565b60006124676001600160801b0383166006612ff2565b6066546001600160a01b031681565b606d546000906001600160801b03908116908316101561265e576000612467565b50606d5460286001600160801b03918216909203160490565b6069546001600160a01b031690565b607060205260009081526040902080546001909101546001600160a01b03821691600160a01b900460ff16906001600160801b0380821691600160801b90041684565b6067546001600160a01b031633146127125760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b606d5461ffff600160801b909104811690821610156127625760405162461bcd60e51b815260040180806020018281038252604d815260200180613784604d913960600191505060405180910390fd5b606d805461ffff808416600160901b90810261ffff60901b199093169290921792839055604080519290930416815290517f3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f19181900360200190a150565b6067546001600160a01b031633146128095760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b606d5461ffff600160901b909104811690821611156128595760405162461bcd60e51b815260040180806020018281038252604f815260200180613509604f913960600191505060405180910390fd5b606d805461ffff808416600160801b90810261ffff60801b199093169290921792839055604080519290930416815290517fc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea9181900360200190a150565b6067546001600160a01b031633146129005760405162461bcd60e51b81526004018080602001828103825260368152602001806138e96036913960400191505060405180910390fd5b606f805461ffff191661ffff838116919091179182905560408051929091168252517fd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e916020908290030190a150565b678ac7230489e8000081565b61296461338c565b60408051606081019182905290606e90600390826000855b82829054906101000a900461ffff1661ffff168152602001906002019060208260010104928301926001038202915080841161297c5790505050505050905090565b6071602052600090815260409020546001600160801b031681565b60006001600160801b0383166129f157506000612467565b8282026001600160801b038084169080861690831681612a0d57fe5b046001600160801b031614610bf45760405162461bcd60e51b815260040180806020018281038252602181526020018061386a6021913960400191505060405180910390fd5b6000610bf483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613034565b60008282016001600160801b038085169082161015610bf4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082826020811015612b0d57600080fd5b50356001600160e01b031916905063d505accf60e01b811415612d5f576000808080808080612b3f896004818d6133f8565b60e0811015612b4d57600080fd5b506001600160a01b038135811698506020820135169650604081013595506060810135945060ff608082013516935060a0810135925060c001359050338714612bc75760405162461bcd60e51b8152600401808060200182810382526036815260200180613ac86036913960400191505060405180910390fd5b6001600160a01b0386163014612c0e5760405162461bcd60e51b81526004018080602001828103825260368152602001806139ef6036913960400191505060405180910390fd5b8a8514612c4c5760405162461bcd60e51b815260040180806020018281038252602c81526020018061349b602c913960400191505060405180910390fd5b606554604080516001600160a01b038a811660248301528981166044830152606482018990526084820188905260ff871660a483015260c4820186905260e48083018690528351808403909101815261010490920183526020820180516001600160e01b031663d505accf60e01b178152925182519190941693919282918083835b60208310612ced5780518252601f199092019160209182019101612cce565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612d4f576040519150601f19603f3d011682016040523d82523d6000602084013e612d54565b606091505b505050505050505050505b50505050565b6001600160801b03808416600090815260706020908152604080832080546001909101546001600160a01b03878116865260719094529190932054919092169291821691612db4911685612fb0565b6001600160a01b03848116600081815260716020908152604080832080546001600160801b03199081166001600160801b03988916179091558b87168452607090925290912080546001600160a01b0319169092178255600191909101805490911692871692909217909155821615801590612e3857506001600160801b03811615155b15612ea0576001600160a01b038216600090815260716020526040902054612e69906001600160801b031682612a95565b6001600160a01b038316600090815260716020526040902080546001600160801b0319166001600160801b03929092169190911790555b826001600160a01b0316856001600160801b03167fd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e4338660405180826001600160801b0316815260200191505060405180910390a35050505050565b303b1590565b600054610100900460ff1680612f1a5750612f1a612efb565b80612f28575060005460ff16155b612f635760405162461bcd60e51b815260040180806020018281038252602e8152602001806138bb602e913960400191505060405180910390fd5b600054610100900460ff16158015612f8e576000805460ff1961ff0019909116610100171660011790555b6033805460ff191660011790558015612fad576000805461ff00191690555b50565b6000610bf483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506130f1565b6000610bf483836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f000000000000000081525061315e565b6000816001600160801b0384166130c95760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561308e578181015183820152602001613076565b50505050905090810190601f1680156130bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000836001600160801b0316856001600160801b0316816130e757fe5b0495945050505050565b6000836001600160801b0316836001600160801b0316111582906131565760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561308e578181015183820152602001613076565b505050900390565b6000816001600160801b0384166131b65760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561308e578181015183820152602001613076565b50826001600160801b0316846001600160801b0316816131d257fe5b06949350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061321c57805160ff1916838001178555613249565b82800160010185558215613249579182015b8281111561324957825182559160200191906001019061322e565b506132559291506133aa565b5090565b6001830191839082156132df5791602002820160005b838211156132af57835183826101000a81548161ffff021916908361ffff160217905550926020019260020160208160010104928301926001030261326f565b80156132dd5782816101000a81549061ffff02191690556002016020816001010492830192600103026132af565b505b506132559291506133bf565b6003830191839082156133805791602002820160005b8382111561334b57835183826101000a8154816001600160801b0302191690836001600160801b031602179055509260200192601001602081600f01049283019260010302613301565b801561337e5782816101000a8154906001600160801b030219169055601001602081600f0104928301926001030261334b565b505b506132559291506133d9565b60405180606001604052806003906020820280368337509192915050565b5b8082111561325557600081556001016133ab565b5b8082111561325557805461ffff191681556001016133c0565b5b808211156132555780546001600160801b03191681556001016133da565b60008085851115613407578182fd5b83861115613413578182fd5b505082019391909203915056fe4865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a20434f4f5244494e41544f525f4e4f545f524547495354455245444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c74694269643a20544f4b454e5f5452414e534645525f4641494c45444865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a2057524f4e475f414d4f554e544865726d657a41756374696f6e50726f746f636f6c3a3a6368616e676544656661756c74536c6f745365744269643a204e4f545f56414c49445f534c4f545f5345544865726d657a41756374696f6e50726f746f636f6c3a3a736574436c6f73656441756374696f6e536c6f74733a20475245415445525f5448414e5f434c4f5345445f41554354494f4e5f534c4f54534865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a2042454c4f575f4d494e494d554d4865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a20544f4b454e5f5452414e534645525f4641494c45444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c74694269642041554354494f4e5f434c4f5345444865726d657a41756374696f6e50726f746f636f6c3a3a6765744d696e4269644279536c6f743a2041554354494f4e5f434c4f5345444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c7469426964204d41584249445f475245415445525f5448414e5f4d494e4249444865726d657a41756374696f6e50726f746f636f6c3a3a6368616e676544656661756c74536c6f745365744269643a20534c4f545f444543454e5452414c495a45444865726d657a41756374696f6e50726f746f636f6c3a3a736574416c6c6f636174696f6e526174696f3a20414c4c4f434154494f4e5f524154494f5f4e4f545f56414c49444865726d657a41756374696f6e50726f746f636f6c3a3a6865726d657a41756374696f6e50726f746f636f6c496e697469616c697a65722047454e455349535f42454c4f575f4d494e494d414c4865726d657a41756374696f6e50726f746f636f6c3a3a736574536c6f74446561646c696e653a20475245415445525f5448414e5f424c4f434b535f5045525f534c4f544865726d657a41756374696f6e50726f746f636f6c3a3a7365744f70656e41756374696f6e536c6f74733a20534d414c4c45525f5448414e5f434c4f5345445f41554354494f4e5f534c4f54534865726d657a41756374696f6e50726f746f636f6c3a3a63616e466f7267652041554354494f4e5f4e4f545f535441525445444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a2041554354494f4e5f4e4f545f4f50454e4865726d657a41756374696f6e50726f746f636f6c3a3a636c61696d48455a3a204e4f545f454e4f5547485f42414c414e4345536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774865726d657a41756374696f6e50726f746f636f6c3a3a666f7267653a204f4e4c595f4845524d455a5f524f4c4c5550436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65644865726d657a41756374696f6e50726f746f636f6c3a3a6f6e6c79476f7665726e616e63653a204f4e4c595f474f5645524e414e43454865726d657a41756374696f6e50726f746f636f6c3a3a666f7267653a2043414e4e4f545f464f5247454865726d657a41756374696f6e50726f746f636f6c3a3a636c61696d48455a3a20544f4b454e5f5452414e534645525f4641494c45444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c7469426964204e4f545f454e4f5547485f42414c414e43454865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c74694269642041554354494f4e5f4e4f545f4f50454e4865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a205350454e4445525f4e4f545f455155414c5f544849534865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734269643a2041554354494f4e5f434c4f5345444865726d657a41756374696f6e50726f746f636f6c3a3a70726f636573734d756c746942696420434f4f5244494e41544f525f4e4f545f524547495354455245444865726d657a41756374696f6e50726f746f636f6c3a3a63616e466f7267652057524f4e475f424c4f434b4e554d4245524865726d657a41756374696f6e50726f746f636f6c3a3a5f7065726d69743a204f574e45525f4e4f545f455155414c5f53454e444552a2646970667358221220fa6e9ab6bd62c31a013ab78578144885ff66320333e5884e308e6b1fc2054fc764736f6c634300060c0033"
  28. // DeployHermezAuctionProtocol deploys a new Ethereum contract, binding an instance of HermezAuctionProtocol to it.
  29. func DeployHermezAuctionProtocol(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *HermezAuctionProtocol, error) {
  30. parsed, err := abi.JSON(strings.NewReader(HermezAuctionProtocolABI))
  31. if err != nil {
  32. return common.Address{}, nil, nil, err
  33. }
  34. address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(HermezAuctionProtocolBin), backend)
  35. if err != nil {
  36. return common.Address{}, nil, nil, err
  37. }
  38. return address, tx, &HermezAuctionProtocol{HermezAuctionProtocolCaller: HermezAuctionProtocolCaller{contract: contract}, HermezAuctionProtocolTransactor: HermezAuctionProtocolTransactor{contract: contract}, HermezAuctionProtocolFilterer: HermezAuctionProtocolFilterer{contract: contract}}, nil
  39. }
  40. // HermezAuctionProtocol is an auto generated Go binding around an Ethereum contract.
  41. type HermezAuctionProtocol struct {
  42. HermezAuctionProtocolCaller // Read-only binding to the contract
  43. HermezAuctionProtocolTransactor // Write-only binding to the contract
  44. HermezAuctionProtocolFilterer // Log filterer for contract events
  45. }
  46. // HermezAuctionProtocolCaller is an auto generated read-only Go binding around an Ethereum contract.
  47. type HermezAuctionProtocolCaller struct {
  48. contract *bind.BoundContract // Generic contract wrapper for the low level calls
  49. }
  50. // HermezAuctionProtocolTransactor is an auto generated write-only Go binding around an Ethereum contract.
  51. type HermezAuctionProtocolTransactor struct {
  52. contract *bind.BoundContract // Generic contract wrapper for the low level calls
  53. }
  54. // HermezAuctionProtocolFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
  55. type HermezAuctionProtocolFilterer struct {
  56. contract *bind.BoundContract // Generic contract wrapper for the low level calls
  57. }
  58. // HermezAuctionProtocolSession is an auto generated Go binding around an Ethereum contract,
  59. // with pre-set call and transact options.
  60. type HermezAuctionProtocolSession struct {
  61. Contract *HermezAuctionProtocol // Generic contract binding to set the session for
  62. CallOpts bind.CallOpts // Call options to use throughout this session
  63. TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
  64. }
  65. // HermezAuctionProtocolCallerSession is an auto generated read-only Go binding around an Ethereum contract,
  66. // with pre-set call options.
  67. type HermezAuctionProtocolCallerSession struct {
  68. Contract *HermezAuctionProtocolCaller // Generic contract caller binding to set the session for
  69. CallOpts bind.CallOpts // Call options to use throughout this session
  70. }
  71. // HermezAuctionProtocolTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
  72. // with pre-set transact options.
  73. type HermezAuctionProtocolTransactorSession struct {
  74. Contract *HermezAuctionProtocolTransactor // Generic contract transactor binding to set the session for
  75. TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
  76. }
  77. // HermezAuctionProtocolRaw is an auto generated low-level Go binding around an Ethereum contract.
  78. type HermezAuctionProtocolRaw struct {
  79. Contract *HermezAuctionProtocol // Generic contract binding to access the raw methods on
  80. }
  81. // HermezAuctionProtocolCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
  82. type HermezAuctionProtocolCallerRaw struct {
  83. Contract *HermezAuctionProtocolCaller // Generic read-only contract binding to access the raw methods on
  84. }
  85. // HermezAuctionProtocolTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
  86. type HermezAuctionProtocolTransactorRaw struct {
  87. Contract *HermezAuctionProtocolTransactor // Generic write-only contract binding to access the raw methods on
  88. }
  89. // NewHermezAuctionProtocol creates a new instance of HermezAuctionProtocol, bound to a specific deployed contract.
  90. func NewHermezAuctionProtocol(address common.Address, backend bind.ContractBackend) (*HermezAuctionProtocol, error) {
  91. contract, err := bindHermezAuctionProtocol(address, backend, backend, backend)
  92. if err != nil {
  93. return nil, err
  94. }
  95. return &HermezAuctionProtocol{HermezAuctionProtocolCaller: HermezAuctionProtocolCaller{contract: contract}, HermezAuctionProtocolTransactor: HermezAuctionProtocolTransactor{contract: contract}, HermezAuctionProtocolFilterer: HermezAuctionProtocolFilterer{contract: contract}}, nil
  96. }
  97. // NewHermezAuctionProtocolCaller creates a new read-only instance of HermezAuctionProtocol, bound to a specific deployed contract.
  98. func NewHermezAuctionProtocolCaller(address common.Address, caller bind.ContractCaller) (*HermezAuctionProtocolCaller, error) {
  99. contract, err := bindHermezAuctionProtocol(address, caller, nil, nil)
  100. if err != nil {
  101. return nil, err
  102. }
  103. return &HermezAuctionProtocolCaller{contract: contract}, nil
  104. }
  105. // NewHermezAuctionProtocolTransactor creates a new write-only instance of HermezAuctionProtocol, bound to a specific deployed contract.
  106. func NewHermezAuctionProtocolTransactor(address common.Address, transactor bind.ContractTransactor) (*HermezAuctionProtocolTransactor, error) {
  107. contract, err := bindHermezAuctionProtocol(address, nil, transactor, nil)
  108. if err != nil {
  109. return nil, err
  110. }
  111. return &HermezAuctionProtocolTransactor{contract: contract}, nil
  112. }
  113. // NewHermezAuctionProtocolFilterer creates a new log filterer instance of HermezAuctionProtocol, bound to a specific deployed contract.
  114. func NewHermezAuctionProtocolFilterer(address common.Address, filterer bind.ContractFilterer) (*HermezAuctionProtocolFilterer, error) {
  115. contract, err := bindHermezAuctionProtocol(address, nil, nil, filterer)
  116. if err != nil {
  117. return nil, err
  118. }
  119. return &HermezAuctionProtocolFilterer{contract: contract}, nil
  120. }
  121. // bindHermezAuctionProtocol binds a generic wrapper to an already deployed contract.
  122. func bindHermezAuctionProtocol(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
  123. parsed, err := abi.JSON(strings.NewReader(HermezAuctionProtocolABI))
  124. if err != nil {
  125. return nil, err
  126. }
  127. return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil
  128. }
  129. // Call invokes the (constant) contract method with params as input values and
  130. // sets the output to result. The result type might be a single field for simple
  131. // returns, a slice of interfaces for anonymous returns and a struct for named
  132. // returns.
  133. func (_HermezAuctionProtocol *HermezAuctionProtocolRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
  134. return _HermezAuctionProtocol.Contract.HermezAuctionProtocolCaller.contract.Call(opts, result, method, params...)
  135. }
  136. // Transfer initiates a plain transaction to move funds to the contract, calling
  137. // its default method if one is available.
  138. func (_HermezAuctionProtocol *HermezAuctionProtocolRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
  139. return _HermezAuctionProtocol.Contract.HermezAuctionProtocolTransactor.contract.Transfer(opts)
  140. }
  141. // Transact invokes the (paid) contract method with params as input values.
  142. func (_HermezAuctionProtocol *HermezAuctionProtocolRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
  143. return _HermezAuctionProtocol.Contract.HermezAuctionProtocolTransactor.contract.Transact(opts, method, params...)
  144. }
  145. // Call invokes the (constant) contract method with params as input values and
  146. // sets the output to result. The result type might be a single field for simple
  147. // returns, a slice of interfaces for anonymous returns and a struct for named
  148. // returns.
  149. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
  150. return _HermezAuctionProtocol.Contract.contract.Call(opts, result, method, params...)
  151. }
  152. // Transfer initiates a plain transaction to move funds to the contract, calling
  153. // its default method if one is available.
  154. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
  155. return _HermezAuctionProtocol.Contract.contract.Transfer(opts)
  156. }
  157. // Transact invokes the (paid) contract method with params as input values.
  158. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
  159. return _HermezAuctionProtocol.Contract.contract.Transact(opts, method, params...)
  160. }
  161. // BLOCKSPERSLOT is a free data retrieval call binding the contract method 0x2243de47.
  162. //
  163. // Solidity: function BLOCKS_PER_SLOT() view returns(uint8)
  164. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) BLOCKSPERSLOT(opts *bind.CallOpts) (uint8, error) {
  165. var (
  166. ret0 = new(uint8)
  167. )
  168. out := ret0
  169. err := _HermezAuctionProtocol.contract.Call(opts, out, "BLOCKS_PER_SLOT")
  170. return *ret0, err
  171. }
  172. // BLOCKSPERSLOT is a free data retrieval call binding the contract method 0x2243de47.
  173. //
  174. // Solidity: function BLOCKS_PER_SLOT() view returns(uint8)
  175. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) BLOCKSPERSLOT() (uint8, error) {
  176. return _HermezAuctionProtocol.Contract.BLOCKSPERSLOT(&_HermezAuctionProtocol.CallOpts)
  177. }
  178. // BLOCKSPERSLOT is a free data retrieval call binding the contract method 0x2243de47.
  179. //
  180. // Solidity: function BLOCKS_PER_SLOT() view returns(uint8)
  181. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) BLOCKSPERSLOT() (uint8, error) {
  182. return _HermezAuctionProtocol.Contract.BLOCKSPERSLOT(&_HermezAuctionProtocol.CallOpts)
  183. }
  184. // INITIALMINIMALBIDDING is a free data retrieval call binding the contract method 0xe6065914.
  185. //
  186. // Solidity: function INITIAL_MINIMAL_BIDDING() view returns(uint128)
  187. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) INITIALMINIMALBIDDING(opts *bind.CallOpts) (*big.Int, error) {
  188. var (
  189. ret0 = new(*big.Int)
  190. )
  191. out := ret0
  192. err := _HermezAuctionProtocol.contract.Call(opts, out, "INITIAL_MINIMAL_BIDDING")
  193. return *ret0, err
  194. }
  195. // INITIALMINIMALBIDDING is a free data retrieval call binding the contract method 0xe6065914.
  196. //
  197. // Solidity: function INITIAL_MINIMAL_BIDDING() view returns(uint128)
  198. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) INITIALMINIMALBIDDING() (*big.Int, error) {
  199. return _HermezAuctionProtocol.Contract.INITIALMINIMALBIDDING(&_HermezAuctionProtocol.CallOpts)
  200. }
  201. // INITIALMINIMALBIDDING is a free data retrieval call binding the contract method 0xe6065914.
  202. //
  203. // Solidity: function INITIAL_MINIMAL_BIDDING() view returns(uint128)
  204. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) INITIALMINIMALBIDDING() (*big.Int, error) {
  205. return _HermezAuctionProtocol.Contract.INITIALMINIMALBIDDING(&_HermezAuctionProtocol.CallOpts)
  206. }
  207. // CanForge is a free data retrieval call binding the contract method 0x83b1f6a0.
  208. //
  209. // Solidity: function canForge(address forger, uint256 blockNumber) view returns(bool)
  210. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) CanForge(opts *bind.CallOpts, forger common.Address, blockNumber *big.Int) (bool, error) {
  211. var (
  212. ret0 = new(bool)
  213. )
  214. out := ret0
  215. err := _HermezAuctionProtocol.contract.Call(opts, out, "canForge", forger, blockNumber)
  216. return *ret0, err
  217. }
  218. // CanForge is a free data retrieval call binding the contract method 0x83b1f6a0.
  219. //
  220. // Solidity: function canForge(address forger, uint256 blockNumber) view returns(bool)
  221. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) CanForge(forger common.Address, blockNumber *big.Int) (bool, error) {
  222. return _HermezAuctionProtocol.Contract.CanForge(&_HermezAuctionProtocol.CallOpts, forger, blockNumber)
  223. }
  224. // CanForge is a free data retrieval call binding the contract method 0x83b1f6a0.
  225. //
  226. // Solidity: function canForge(address forger, uint256 blockNumber) view returns(bool)
  227. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) CanForge(forger common.Address, blockNumber *big.Int) (bool, error) {
  228. return _HermezAuctionProtocol.Contract.CanForge(&_HermezAuctionProtocol.CallOpts, forger, blockNumber)
  229. }
  230. // Coordinators is a free data retrieval call binding the contract method 0xa48af096.
  231. //
  232. // Solidity: function coordinators(address ) view returns(address forger, string coordinatorURL)
  233. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) Coordinators(opts *bind.CallOpts, arg0 common.Address) (struct {
  234. Forger common.Address
  235. CoordinatorURL string
  236. }, error) {
  237. ret := new(struct {
  238. Forger common.Address
  239. CoordinatorURL string
  240. })
  241. out := ret
  242. err := _HermezAuctionProtocol.contract.Call(opts, out, "coordinators", arg0)
  243. return *ret, err
  244. }
  245. // Coordinators is a free data retrieval call binding the contract method 0xa48af096.
  246. //
  247. // Solidity: function coordinators(address ) view returns(address forger, string coordinatorURL)
  248. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) Coordinators(arg0 common.Address) (struct {
  249. Forger common.Address
  250. CoordinatorURL string
  251. }, error) {
  252. return _HermezAuctionProtocol.Contract.Coordinators(&_HermezAuctionProtocol.CallOpts, arg0)
  253. }
  254. // Coordinators is a free data retrieval call binding the contract method 0xa48af096.
  255. //
  256. // Solidity: function coordinators(address ) view returns(address forger, string coordinatorURL)
  257. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) Coordinators(arg0 common.Address) (struct {
  258. Forger common.Address
  259. CoordinatorURL string
  260. }, error) {
  261. return _HermezAuctionProtocol.Contract.Coordinators(&_HermezAuctionProtocol.CallOpts, arg0)
  262. }
  263. // GenesisBlock is a free data retrieval call binding the contract method 0x4cdc9c63.
  264. //
  265. // Solidity: function genesisBlock() view returns(uint128)
  266. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GenesisBlock(opts *bind.CallOpts) (*big.Int, error) {
  267. var (
  268. ret0 = new(*big.Int)
  269. )
  270. out := ret0
  271. err := _HermezAuctionProtocol.contract.Call(opts, out, "genesisBlock")
  272. return *ret0, err
  273. }
  274. // GenesisBlock is a free data retrieval call binding the contract method 0x4cdc9c63.
  275. //
  276. // Solidity: function genesisBlock() view returns(uint128)
  277. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GenesisBlock() (*big.Int, error) {
  278. return _HermezAuctionProtocol.Contract.GenesisBlock(&_HermezAuctionProtocol.CallOpts)
  279. }
  280. // GenesisBlock is a free data retrieval call binding the contract method 0x4cdc9c63.
  281. //
  282. // Solidity: function genesisBlock() view returns(uint128)
  283. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GenesisBlock() (*big.Int, error) {
  284. return _HermezAuctionProtocol.Contract.GenesisBlock(&_HermezAuctionProtocol.CallOpts)
  285. }
  286. // GetAllocationRatio is a free data retrieval call binding the contract method 0xec29159b.
  287. //
  288. // Solidity: function getAllocationRatio() view returns(uint16[3])
  289. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetAllocationRatio(opts *bind.CallOpts) ([3]uint16, error) {
  290. var (
  291. ret0 = new([3]uint16)
  292. )
  293. out := ret0
  294. err := _HermezAuctionProtocol.contract.Call(opts, out, "getAllocationRatio")
  295. return *ret0, err
  296. }
  297. // GetAllocationRatio is a free data retrieval call binding the contract method 0xec29159b.
  298. //
  299. // Solidity: function getAllocationRatio() view returns(uint16[3])
  300. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetAllocationRatio() ([3]uint16, error) {
  301. return _HermezAuctionProtocol.Contract.GetAllocationRatio(&_HermezAuctionProtocol.CallOpts)
  302. }
  303. // GetAllocationRatio is a free data retrieval call binding the contract method 0xec29159b.
  304. //
  305. // Solidity: function getAllocationRatio() view returns(uint16[3])
  306. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetAllocationRatio() ([3]uint16, error) {
  307. return _HermezAuctionProtocol.Contract.GetAllocationRatio(&_HermezAuctionProtocol.CallOpts)
  308. }
  309. // GetBootCoordinator is a free data retrieval call binding the contract method 0xb5f7f2f0.
  310. //
  311. // Solidity: function getBootCoordinator() view returns(address)
  312. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetBootCoordinator(opts *bind.CallOpts) (common.Address, error) {
  313. var (
  314. ret0 = new(common.Address)
  315. )
  316. out := ret0
  317. err := _HermezAuctionProtocol.contract.Call(opts, out, "getBootCoordinator")
  318. return *ret0, err
  319. }
  320. // GetBootCoordinator is a free data retrieval call binding the contract method 0xb5f7f2f0.
  321. //
  322. // Solidity: function getBootCoordinator() view returns(address)
  323. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetBootCoordinator() (common.Address, error) {
  324. return _HermezAuctionProtocol.Contract.GetBootCoordinator(&_HermezAuctionProtocol.CallOpts)
  325. }
  326. // GetBootCoordinator is a free data retrieval call binding the contract method 0xb5f7f2f0.
  327. //
  328. // Solidity: function getBootCoordinator() view returns(address)
  329. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetBootCoordinator() (common.Address, error) {
  330. return _HermezAuctionProtocol.Contract.GetBootCoordinator(&_HermezAuctionProtocol.CallOpts)
  331. }
  332. // GetClaimableHEZ is a free data retrieval call binding the contract method 0x5cca4903.
  333. //
  334. // Solidity: function getClaimableHEZ(address bidder) view returns(uint128)
  335. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetClaimableHEZ(opts *bind.CallOpts, bidder common.Address) (*big.Int, error) {
  336. var (
  337. ret0 = new(*big.Int)
  338. )
  339. out := ret0
  340. err := _HermezAuctionProtocol.contract.Call(opts, out, "getClaimableHEZ", bidder)
  341. return *ret0, err
  342. }
  343. // GetClaimableHEZ is a free data retrieval call binding the contract method 0x5cca4903.
  344. //
  345. // Solidity: function getClaimableHEZ(address bidder) view returns(uint128)
  346. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetClaimableHEZ(bidder common.Address) (*big.Int, error) {
  347. return _HermezAuctionProtocol.Contract.GetClaimableHEZ(&_HermezAuctionProtocol.CallOpts, bidder)
  348. }
  349. // GetClaimableHEZ is a free data retrieval call binding the contract method 0x5cca4903.
  350. //
  351. // Solidity: function getClaimableHEZ(address bidder) view returns(uint128)
  352. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetClaimableHEZ(bidder common.Address) (*big.Int, error) {
  353. return _HermezAuctionProtocol.Contract.GetClaimableHEZ(&_HermezAuctionProtocol.CallOpts, bidder)
  354. }
  355. // GetClosedAuctionSlots is a free data retrieval call binding the contract method 0x4da9639d.
  356. //
  357. // Solidity: function getClosedAuctionSlots() view returns(uint16)
  358. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetClosedAuctionSlots(opts *bind.CallOpts) (uint16, error) {
  359. var (
  360. ret0 = new(uint16)
  361. )
  362. out := ret0
  363. err := _HermezAuctionProtocol.contract.Call(opts, out, "getClosedAuctionSlots")
  364. return *ret0, err
  365. }
  366. // GetClosedAuctionSlots is a free data retrieval call binding the contract method 0x4da9639d.
  367. //
  368. // Solidity: function getClosedAuctionSlots() view returns(uint16)
  369. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetClosedAuctionSlots() (uint16, error) {
  370. return _HermezAuctionProtocol.Contract.GetClosedAuctionSlots(&_HermezAuctionProtocol.CallOpts)
  371. }
  372. // GetClosedAuctionSlots is a free data retrieval call binding the contract method 0x4da9639d.
  373. //
  374. // Solidity: function getClosedAuctionSlots() view returns(uint16)
  375. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetClosedAuctionSlots() (uint16, error) {
  376. return _HermezAuctionProtocol.Contract.GetClosedAuctionSlots(&_HermezAuctionProtocol.CallOpts)
  377. }
  378. // GetCurrentSlotNumber is a free data retrieval call binding the contract method 0x0c4da4f6.
  379. //
  380. // Solidity: function getCurrentSlotNumber() view returns(uint128)
  381. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetCurrentSlotNumber(opts *bind.CallOpts) (*big.Int, error) {
  382. var (
  383. ret0 = new(*big.Int)
  384. )
  385. out := ret0
  386. err := _HermezAuctionProtocol.contract.Call(opts, out, "getCurrentSlotNumber")
  387. return *ret0, err
  388. }
  389. // GetCurrentSlotNumber is a free data retrieval call binding the contract method 0x0c4da4f6.
  390. //
  391. // Solidity: function getCurrentSlotNumber() view returns(uint128)
  392. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetCurrentSlotNumber() (*big.Int, error) {
  393. return _HermezAuctionProtocol.Contract.GetCurrentSlotNumber(&_HermezAuctionProtocol.CallOpts)
  394. }
  395. // GetCurrentSlotNumber is a free data retrieval call binding the contract method 0x0c4da4f6.
  396. //
  397. // Solidity: function getCurrentSlotNumber() view returns(uint128)
  398. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetCurrentSlotNumber() (*big.Int, error) {
  399. return _HermezAuctionProtocol.Contract.GetCurrentSlotNumber(&_HermezAuctionProtocol.CallOpts)
  400. }
  401. // GetDefaultSlotSetBid is a free data retrieval call binding the contract method 0x564e6a71.
  402. //
  403. // Solidity: function getDefaultSlotSetBid(uint8 slotSet) view returns(uint128)
  404. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetDefaultSlotSetBid(opts *bind.CallOpts, slotSet uint8) (*big.Int, error) {
  405. var (
  406. ret0 = new(*big.Int)
  407. )
  408. out := ret0
  409. err := _HermezAuctionProtocol.contract.Call(opts, out, "getDefaultSlotSetBid", slotSet)
  410. return *ret0, err
  411. }
  412. // GetDefaultSlotSetBid is a free data retrieval call binding the contract method 0x564e6a71.
  413. //
  414. // Solidity: function getDefaultSlotSetBid(uint8 slotSet) view returns(uint128)
  415. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetDefaultSlotSetBid(slotSet uint8) (*big.Int, error) {
  416. return _HermezAuctionProtocol.Contract.GetDefaultSlotSetBid(&_HermezAuctionProtocol.CallOpts, slotSet)
  417. }
  418. // GetDefaultSlotSetBid is a free data retrieval call binding the contract method 0x564e6a71.
  419. //
  420. // Solidity: function getDefaultSlotSetBid(uint8 slotSet) view returns(uint128)
  421. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetDefaultSlotSetBid(slotSet uint8) (*big.Int, error) {
  422. return _HermezAuctionProtocol.Contract.GetDefaultSlotSetBid(&_HermezAuctionProtocol.CallOpts, slotSet)
  423. }
  424. // GetDonationAddress is a free data retrieval call binding the contract method 0x54c03ab7.
  425. //
  426. // Solidity: function getDonationAddress() view returns(address)
  427. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetDonationAddress(opts *bind.CallOpts) (common.Address, error) {
  428. var (
  429. ret0 = new(common.Address)
  430. )
  431. out := ret0
  432. err := _HermezAuctionProtocol.contract.Call(opts, out, "getDonationAddress")
  433. return *ret0, err
  434. }
  435. // GetDonationAddress is a free data retrieval call binding the contract method 0x54c03ab7.
  436. //
  437. // Solidity: function getDonationAddress() view returns(address)
  438. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetDonationAddress() (common.Address, error) {
  439. return _HermezAuctionProtocol.Contract.GetDonationAddress(&_HermezAuctionProtocol.CallOpts)
  440. }
  441. // GetDonationAddress is a free data retrieval call binding the contract method 0x54c03ab7.
  442. //
  443. // Solidity: function getDonationAddress() view returns(address)
  444. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetDonationAddress() (common.Address, error) {
  445. return _HermezAuctionProtocol.Contract.GetDonationAddress(&_HermezAuctionProtocol.CallOpts)
  446. }
  447. // GetMinBidBySlot is a free data retrieval call binding the contract method 0x37d1bd0b.
  448. //
  449. // Solidity: function getMinBidBySlot(uint128 slot) view returns(uint128)
  450. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetMinBidBySlot(opts *bind.CallOpts, slot *big.Int) (*big.Int, error) {
  451. var (
  452. ret0 = new(*big.Int)
  453. )
  454. out := ret0
  455. err := _HermezAuctionProtocol.contract.Call(opts, out, "getMinBidBySlot", slot)
  456. return *ret0, err
  457. }
  458. // GetMinBidBySlot is a free data retrieval call binding the contract method 0x37d1bd0b.
  459. //
  460. // Solidity: function getMinBidBySlot(uint128 slot) view returns(uint128)
  461. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetMinBidBySlot(slot *big.Int) (*big.Int, error) {
  462. return _HermezAuctionProtocol.Contract.GetMinBidBySlot(&_HermezAuctionProtocol.CallOpts, slot)
  463. }
  464. // GetMinBidBySlot is a free data retrieval call binding the contract method 0x37d1bd0b.
  465. //
  466. // Solidity: function getMinBidBySlot(uint128 slot) view returns(uint128)
  467. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetMinBidBySlot(slot *big.Int) (*big.Int, error) {
  468. return _HermezAuctionProtocol.Contract.GetMinBidBySlot(&_HermezAuctionProtocol.CallOpts, slot)
  469. }
  470. // GetOpenAuctionSlots is a free data retrieval call binding the contract method 0xac4b9012.
  471. //
  472. // Solidity: function getOpenAuctionSlots() view returns(uint16)
  473. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetOpenAuctionSlots(opts *bind.CallOpts) (uint16, error) {
  474. var (
  475. ret0 = new(uint16)
  476. )
  477. out := ret0
  478. err := _HermezAuctionProtocol.contract.Call(opts, out, "getOpenAuctionSlots")
  479. return *ret0, err
  480. }
  481. // GetOpenAuctionSlots is a free data retrieval call binding the contract method 0xac4b9012.
  482. //
  483. // Solidity: function getOpenAuctionSlots() view returns(uint16)
  484. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetOpenAuctionSlots() (uint16, error) {
  485. return _HermezAuctionProtocol.Contract.GetOpenAuctionSlots(&_HermezAuctionProtocol.CallOpts)
  486. }
  487. // GetOpenAuctionSlots is a free data retrieval call binding the contract method 0xac4b9012.
  488. //
  489. // Solidity: function getOpenAuctionSlots() view returns(uint16)
  490. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetOpenAuctionSlots() (uint16, error) {
  491. return _HermezAuctionProtocol.Contract.GetOpenAuctionSlots(&_HermezAuctionProtocol.CallOpts)
  492. }
  493. // GetOutbidding is a free data retrieval call binding the contract method 0x55b442e6.
  494. //
  495. // Solidity: function getOutbidding() view returns(uint16)
  496. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetOutbidding(opts *bind.CallOpts) (uint16, error) {
  497. var (
  498. ret0 = new(uint16)
  499. )
  500. out := ret0
  501. err := _HermezAuctionProtocol.contract.Call(opts, out, "getOutbidding")
  502. return *ret0, err
  503. }
  504. // GetOutbidding is a free data retrieval call binding the contract method 0x55b442e6.
  505. //
  506. // Solidity: function getOutbidding() view returns(uint16)
  507. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetOutbidding() (uint16, error) {
  508. return _HermezAuctionProtocol.Contract.GetOutbidding(&_HermezAuctionProtocol.CallOpts)
  509. }
  510. // GetOutbidding is a free data retrieval call binding the contract method 0x55b442e6.
  511. //
  512. // Solidity: function getOutbidding() view returns(uint16)
  513. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetOutbidding() (uint16, error) {
  514. return _HermezAuctionProtocol.Contract.GetOutbidding(&_HermezAuctionProtocol.CallOpts)
  515. }
  516. // GetSlotDeadline is a free data retrieval call binding the contract method 0x13de9af2.
  517. //
  518. // Solidity: function getSlotDeadline() view returns(uint8)
  519. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetSlotDeadline(opts *bind.CallOpts) (uint8, error) {
  520. var (
  521. ret0 = new(uint8)
  522. )
  523. out := ret0
  524. err := _HermezAuctionProtocol.contract.Call(opts, out, "getSlotDeadline")
  525. return *ret0, err
  526. }
  527. // GetSlotDeadline is a free data retrieval call binding the contract method 0x13de9af2.
  528. //
  529. // Solidity: function getSlotDeadline() view returns(uint8)
  530. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetSlotDeadline() (uint8, error) {
  531. return _HermezAuctionProtocol.Contract.GetSlotDeadline(&_HermezAuctionProtocol.CallOpts)
  532. }
  533. // GetSlotDeadline is a free data retrieval call binding the contract method 0x13de9af2.
  534. //
  535. // Solidity: function getSlotDeadline() view returns(uint8)
  536. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetSlotDeadline() (uint8, error) {
  537. return _HermezAuctionProtocol.Contract.GetSlotDeadline(&_HermezAuctionProtocol.CallOpts)
  538. }
  539. // GetSlotNumber is a free data retrieval call binding the contract method 0xb3dc7bb1.
  540. //
  541. // Solidity: function getSlotNumber(uint128 blockNumber) view returns(uint128)
  542. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetSlotNumber(opts *bind.CallOpts, blockNumber *big.Int) (*big.Int, error) {
  543. var (
  544. ret0 = new(*big.Int)
  545. )
  546. out := ret0
  547. err := _HermezAuctionProtocol.contract.Call(opts, out, "getSlotNumber", blockNumber)
  548. return *ret0, err
  549. }
  550. // GetSlotNumber is a free data retrieval call binding the contract method 0xb3dc7bb1.
  551. //
  552. // Solidity: function getSlotNumber(uint128 blockNumber) view returns(uint128)
  553. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetSlotNumber(blockNumber *big.Int) (*big.Int, error) {
  554. return _HermezAuctionProtocol.Contract.GetSlotNumber(&_HermezAuctionProtocol.CallOpts, blockNumber)
  555. }
  556. // GetSlotNumber is a free data retrieval call binding the contract method 0xb3dc7bb1.
  557. //
  558. // Solidity: function getSlotNumber(uint128 blockNumber) view returns(uint128)
  559. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetSlotNumber(blockNumber *big.Int) (*big.Int, error) {
  560. return _HermezAuctionProtocol.Contract.GetSlotNumber(&_HermezAuctionProtocol.CallOpts, blockNumber)
  561. }
  562. // GetSlotSet is a free data retrieval call binding the contract method 0xac5f658b.
  563. //
  564. // Solidity: function getSlotSet(uint128 slot) view returns(uint128)
  565. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) GetSlotSet(opts *bind.CallOpts, slot *big.Int) (*big.Int, error) {
  566. var (
  567. ret0 = new(*big.Int)
  568. )
  569. out := ret0
  570. err := _HermezAuctionProtocol.contract.Call(opts, out, "getSlotSet", slot)
  571. return *ret0, err
  572. }
  573. // GetSlotSet is a free data retrieval call binding the contract method 0xac5f658b.
  574. //
  575. // Solidity: function getSlotSet(uint128 slot) view returns(uint128)
  576. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) GetSlotSet(slot *big.Int) (*big.Int, error) {
  577. return _HermezAuctionProtocol.Contract.GetSlotSet(&_HermezAuctionProtocol.CallOpts, slot)
  578. }
  579. // GetSlotSet is a free data retrieval call binding the contract method 0xac5f658b.
  580. //
  581. // Solidity: function getSlotSet(uint128 slot) view returns(uint128)
  582. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) GetSlotSet(slot *big.Int) (*big.Int, error) {
  583. return _HermezAuctionProtocol.Contract.GetSlotSet(&_HermezAuctionProtocol.CallOpts, slot)
  584. }
  585. // HermezRollup is a free data retrieval call binding the contract method 0xaebd6d98.
  586. //
  587. // Solidity: function hermezRollup() view returns(address)
  588. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) HermezRollup(opts *bind.CallOpts) (common.Address, error) {
  589. var (
  590. ret0 = new(common.Address)
  591. )
  592. out := ret0
  593. err := _HermezAuctionProtocol.contract.Call(opts, out, "hermezRollup")
  594. return *ret0, err
  595. }
  596. // HermezRollup is a free data retrieval call binding the contract method 0xaebd6d98.
  597. //
  598. // Solidity: function hermezRollup() view returns(address)
  599. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) HermezRollup() (common.Address, error) {
  600. return _HermezAuctionProtocol.Contract.HermezRollup(&_HermezAuctionProtocol.CallOpts)
  601. }
  602. // HermezRollup is a free data retrieval call binding the contract method 0xaebd6d98.
  603. //
  604. // Solidity: function hermezRollup() view returns(address)
  605. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) HermezRollup() (common.Address, error) {
  606. return _HermezAuctionProtocol.Contract.HermezRollup(&_HermezAuctionProtocol.CallOpts)
  607. }
  608. // PendingBalances is a free data retrieval call binding the contract method 0xecdae41b.
  609. //
  610. // Solidity: function pendingBalances(address ) view returns(uint128)
  611. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) PendingBalances(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) {
  612. var (
  613. ret0 = new(*big.Int)
  614. )
  615. out := ret0
  616. err := _HermezAuctionProtocol.contract.Call(opts, out, "pendingBalances", arg0)
  617. return *ret0, err
  618. }
  619. // PendingBalances is a free data retrieval call binding the contract method 0xecdae41b.
  620. //
  621. // Solidity: function pendingBalances(address ) view returns(uint128)
  622. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) PendingBalances(arg0 common.Address) (*big.Int, error) {
  623. return _HermezAuctionProtocol.Contract.PendingBalances(&_HermezAuctionProtocol.CallOpts, arg0)
  624. }
  625. // PendingBalances is a free data retrieval call binding the contract method 0xecdae41b.
  626. //
  627. // Solidity: function pendingBalances(address ) view returns(uint128)
  628. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) PendingBalances(arg0 common.Address) (*big.Int, error) {
  629. return _HermezAuctionProtocol.Contract.PendingBalances(&_HermezAuctionProtocol.CallOpts, arg0)
  630. }
  631. // Slots is a free data retrieval call binding the contract method 0xbc415567.
  632. //
  633. // Solidity: function slots(uint128 ) view returns(address bidder, bool fulfilled, uint128 bidAmount, uint128 closedMinBid)
  634. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) Slots(opts *bind.CallOpts, arg0 *big.Int) (struct {
  635. Bidder common.Address
  636. Fulfilled bool
  637. BidAmount *big.Int
  638. ClosedMinBid *big.Int
  639. }, error) {
  640. ret := new(struct {
  641. Bidder common.Address
  642. Fulfilled bool
  643. BidAmount *big.Int
  644. ClosedMinBid *big.Int
  645. })
  646. out := ret
  647. err := _HermezAuctionProtocol.contract.Call(opts, out, "slots", arg0)
  648. return *ret, err
  649. }
  650. // Slots is a free data retrieval call binding the contract method 0xbc415567.
  651. //
  652. // Solidity: function slots(uint128 ) view returns(address bidder, bool fulfilled, uint128 bidAmount, uint128 closedMinBid)
  653. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) Slots(arg0 *big.Int) (struct {
  654. Bidder common.Address
  655. Fulfilled bool
  656. BidAmount *big.Int
  657. ClosedMinBid *big.Int
  658. }, error) {
  659. return _HermezAuctionProtocol.Contract.Slots(&_HermezAuctionProtocol.CallOpts, arg0)
  660. }
  661. // Slots is a free data retrieval call binding the contract method 0xbc415567.
  662. //
  663. // Solidity: function slots(uint128 ) view returns(address bidder, bool fulfilled, uint128 bidAmount, uint128 closedMinBid)
  664. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) Slots(arg0 *big.Int) (struct {
  665. Bidder common.Address
  666. Fulfilled bool
  667. BidAmount *big.Int
  668. ClosedMinBid *big.Int
  669. }, error) {
  670. return _HermezAuctionProtocol.Contract.Slots(&_HermezAuctionProtocol.CallOpts, arg0)
  671. }
  672. // TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
  673. //
  674. // Solidity: function tokenHEZ() view returns(address)
  675. func (_HermezAuctionProtocol *HermezAuctionProtocolCaller) TokenHEZ(opts *bind.CallOpts) (common.Address, error) {
  676. var (
  677. ret0 = new(common.Address)
  678. )
  679. out := ret0
  680. err := _HermezAuctionProtocol.contract.Call(opts, out, "tokenHEZ")
  681. return *ret0, err
  682. }
  683. // TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
  684. //
  685. // Solidity: function tokenHEZ() view returns(address)
  686. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) TokenHEZ() (common.Address, error) {
  687. return _HermezAuctionProtocol.Contract.TokenHEZ(&_HermezAuctionProtocol.CallOpts)
  688. }
  689. // TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
  690. //
  691. // Solidity: function tokenHEZ() view returns(address)
  692. func (_HermezAuctionProtocol *HermezAuctionProtocolCallerSession) TokenHEZ() (common.Address, error) {
  693. return _HermezAuctionProtocol.Contract.TokenHEZ(&_HermezAuctionProtocol.CallOpts)
  694. }
  695. // ChangeDefaultSlotSetBid is a paid mutator transaction binding the contract method 0x7c643b70.
  696. //
  697. // Solidity: function changeDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid) returns()
  698. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ChangeDefaultSlotSetBid(opts *bind.TransactOpts, slotSet *big.Int, newInitialMinBid *big.Int) (*types.Transaction, error) {
  699. return _HermezAuctionProtocol.contract.Transact(opts, "changeDefaultSlotSetBid", slotSet, newInitialMinBid)
  700. }
  701. // ChangeDefaultSlotSetBid is a paid mutator transaction binding the contract method 0x7c643b70.
  702. //
  703. // Solidity: function changeDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid) returns()
  704. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ChangeDefaultSlotSetBid(slotSet *big.Int, newInitialMinBid *big.Int) (*types.Transaction, error) {
  705. return _HermezAuctionProtocol.Contract.ChangeDefaultSlotSetBid(&_HermezAuctionProtocol.TransactOpts, slotSet, newInitialMinBid)
  706. }
  707. // ChangeDefaultSlotSetBid is a paid mutator transaction binding the contract method 0x7c643b70.
  708. //
  709. // Solidity: function changeDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid) returns()
  710. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ChangeDefaultSlotSetBid(slotSet *big.Int, newInitialMinBid *big.Int) (*types.Transaction, error) {
  711. return _HermezAuctionProtocol.Contract.ChangeDefaultSlotSetBid(&_HermezAuctionProtocol.TransactOpts, slotSet, newInitialMinBid)
  712. }
  713. // ClaimHEZ is a paid mutator transaction binding the contract method 0x6dfe47c9.
  714. //
  715. // Solidity: function claimHEZ() returns()
  716. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ClaimHEZ(opts *bind.TransactOpts) (*types.Transaction, error) {
  717. return _HermezAuctionProtocol.contract.Transact(opts, "claimHEZ")
  718. }
  719. // ClaimHEZ is a paid mutator transaction binding the contract method 0x6dfe47c9.
  720. //
  721. // Solidity: function claimHEZ() returns()
  722. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ClaimHEZ() (*types.Transaction, error) {
  723. return _HermezAuctionProtocol.Contract.ClaimHEZ(&_HermezAuctionProtocol.TransactOpts)
  724. }
  725. // ClaimHEZ is a paid mutator transaction binding the contract method 0x6dfe47c9.
  726. //
  727. // Solidity: function claimHEZ() returns()
  728. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ClaimHEZ() (*types.Transaction, error) {
  729. return _HermezAuctionProtocol.Contract.ClaimHEZ(&_HermezAuctionProtocol.TransactOpts)
  730. }
  731. // Forge is a paid mutator transaction binding the contract method 0x4e5a5178.
  732. //
  733. // Solidity: function forge(address forger) returns()
  734. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) Forge(opts *bind.TransactOpts, forger common.Address) (*types.Transaction, error) {
  735. return _HermezAuctionProtocol.contract.Transact(opts, "forge", forger)
  736. }
  737. // Forge is a paid mutator transaction binding the contract method 0x4e5a5178.
  738. //
  739. // Solidity: function forge(address forger) returns()
  740. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) Forge(forger common.Address) (*types.Transaction, error) {
  741. return _HermezAuctionProtocol.Contract.Forge(&_HermezAuctionProtocol.TransactOpts, forger)
  742. }
  743. // Forge is a paid mutator transaction binding the contract method 0x4e5a5178.
  744. //
  745. // Solidity: function forge(address forger) returns()
  746. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) Forge(forger common.Address) (*types.Transaction, error) {
  747. return _HermezAuctionProtocol.Contract.Forge(&_HermezAuctionProtocol.TransactOpts, forger)
  748. }
  749. // HermezAuctionProtocolInitializer is a paid mutator transaction binding the contract method 0x6074db64.
  750. //
  751. // Solidity: function hermezAuctionProtocolInitializer(address token, uint128 genesis, address hermezRollupAddress, address governanceAddress, address donationAddress, address bootCoordinatorAddress) returns()
  752. 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) {
  753. return _HermezAuctionProtocol.contract.Transact(opts, "hermezAuctionProtocolInitializer", token, genesis, hermezRollupAddress, governanceAddress, donationAddress, bootCoordinatorAddress)
  754. }
  755. // HermezAuctionProtocolInitializer is a paid mutator transaction binding the contract method 0x6074db64.
  756. //
  757. // Solidity: function hermezAuctionProtocolInitializer(address token, uint128 genesis, address hermezRollupAddress, address governanceAddress, address donationAddress, address bootCoordinatorAddress) returns()
  758. 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) {
  759. return _HermezAuctionProtocol.Contract.HermezAuctionProtocolInitializer(&_HermezAuctionProtocol.TransactOpts, token, genesis, hermezRollupAddress, governanceAddress, donationAddress, bootCoordinatorAddress)
  760. }
  761. // HermezAuctionProtocolInitializer is a paid mutator transaction binding the contract method 0x6074db64.
  762. //
  763. // Solidity: function hermezAuctionProtocolInitializer(address token, uint128 genesis, address hermezRollupAddress, address governanceAddress, address donationAddress, address bootCoordinatorAddress) returns()
  764. 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) {
  765. return _HermezAuctionProtocol.Contract.HermezAuctionProtocolInitializer(&_HermezAuctionProtocol.TransactOpts, token, genesis, hermezRollupAddress, governanceAddress, donationAddress, bootCoordinatorAddress)
  766. }
  767. // ProcessBid is a paid mutator transaction binding the contract method 0x4b93b7fa.
  768. //
  769. // Solidity: function processBid(uint128 amount, uint128 slot, uint128 bidAmount, bytes permit) returns()
  770. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) ProcessBid(opts *bind.TransactOpts, amount *big.Int, slot *big.Int, bidAmount *big.Int, permit []byte) (*types.Transaction, error) {
  771. return _HermezAuctionProtocol.contract.Transact(opts, "processBid", amount, slot, bidAmount, permit)
  772. }
  773. // ProcessBid is a paid mutator transaction binding the contract method 0x4b93b7fa.
  774. //
  775. // Solidity: function processBid(uint128 amount, uint128 slot, uint128 bidAmount, bytes permit) returns()
  776. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) ProcessBid(amount *big.Int, slot *big.Int, bidAmount *big.Int, permit []byte) (*types.Transaction, error) {
  777. return _HermezAuctionProtocol.Contract.ProcessBid(&_HermezAuctionProtocol.TransactOpts, amount, slot, bidAmount, permit)
  778. }
  779. // ProcessBid is a paid mutator transaction binding the contract method 0x4b93b7fa.
  780. //
  781. // Solidity: function processBid(uint128 amount, uint128 slot, uint128 bidAmount, bytes permit) returns()
  782. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) ProcessBid(amount *big.Int, slot *big.Int, bidAmount *big.Int, permit []byte) (*types.Transaction, error) {
  783. return _HermezAuctionProtocol.Contract.ProcessBid(&_HermezAuctionProtocol.TransactOpts, amount, slot, bidAmount, permit)
  784. }
  785. // ProcessMultiBid is a paid mutator transaction binding the contract method 0x583ad0dd.
  786. //
  787. // Solidity: function processMultiBid(uint128 amount, uint128 startingSlot, uint128 endingSlot, bool[6] slotSets, uint128 maxBid, uint128 minBid, bytes permit) returns()
  788. 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) {
  789. return _HermezAuctionProtocol.contract.Transact(opts, "processMultiBid", amount, startingSlot, endingSlot, slotSets, maxBid, minBid, permit)
  790. }
  791. // ProcessMultiBid is a paid mutator transaction binding the contract method 0x583ad0dd.
  792. //
  793. // Solidity: function processMultiBid(uint128 amount, uint128 startingSlot, uint128 endingSlot, bool[6] slotSets, uint128 maxBid, uint128 minBid, bytes permit) returns()
  794. 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) {
  795. return _HermezAuctionProtocol.Contract.ProcessMultiBid(&_HermezAuctionProtocol.TransactOpts, amount, startingSlot, endingSlot, slotSets, maxBid, minBid, permit)
  796. }
  797. // ProcessMultiBid is a paid mutator transaction binding the contract method 0x583ad0dd.
  798. //
  799. // Solidity: function processMultiBid(uint128 amount, uint128 startingSlot, uint128 endingSlot, bool[6] slotSets, uint128 maxBid, uint128 minBid, bytes permit) returns()
  800. 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) {
  801. return _HermezAuctionProtocol.Contract.ProcessMultiBid(&_HermezAuctionProtocol.TransactOpts, amount, startingSlot, endingSlot, slotSets, maxBid, minBid, permit)
  802. }
  803. // SetAllocationRatio is a paid mutator transaction binding the contract method 0x82787405.
  804. //
  805. // Solidity: function setAllocationRatio(uint16[3] newAllocationRatio) returns()
  806. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetAllocationRatio(opts *bind.TransactOpts, newAllocationRatio [3]uint16) (*types.Transaction, error) {
  807. return _HermezAuctionProtocol.contract.Transact(opts, "setAllocationRatio", newAllocationRatio)
  808. }
  809. // SetAllocationRatio is a paid mutator transaction binding the contract method 0x82787405.
  810. //
  811. // Solidity: function setAllocationRatio(uint16[3] newAllocationRatio) returns()
  812. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetAllocationRatio(newAllocationRatio [3]uint16) (*types.Transaction, error) {
  813. return _HermezAuctionProtocol.Contract.SetAllocationRatio(&_HermezAuctionProtocol.TransactOpts, newAllocationRatio)
  814. }
  815. // SetAllocationRatio is a paid mutator transaction binding the contract method 0x82787405.
  816. //
  817. // Solidity: function setAllocationRatio(uint16[3] newAllocationRatio) returns()
  818. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetAllocationRatio(newAllocationRatio [3]uint16) (*types.Transaction, error) {
  819. return _HermezAuctionProtocol.Contract.SetAllocationRatio(&_HermezAuctionProtocol.TransactOpts, newAllocationRatio)
  820. }
  821. // SetBootCoordinator is a paid mutator transaction binding the contract method 0x62945af2.
  822. //
  823. // Solidity: function setBootCoordinator(address newBootCoordinator) returns()
  824. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetBootCoordinator(opts *bind.TransactOpts, newBootCoordinator common.Address) (*types.Transaction, error) {
  825. return _HermezAuctionProtocol.contract.Transact(opts, "setBootCoordinator", newBootCoordinator)
  826. }
  827. // SetBootCoordinator is a paid mutator transaction binding the contract method 0x62945af2.
  828. //
  829. // Solidity: function setBootCoordinator(address newBootCoordinator) returns()
  830. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetBootCoordinator(newBootCoordinator common.Address) (*types.Transaction, error) {
  831. return _HermezAuctionProtocol.Contract.SetBootCoordinator(&_HermezAuctionProtocol.TransactOpts, newBootCoordinator)
  832. }
  833. // SetBootCoordinator is a paid mutator transaction binding the contract method 0x62945af2.
  834. //
  835. // Solidity: function setBootCoordinator(address newBootCoordinator) returns()
  836. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetBootCoordinator(newBootCoordinator common.Address) (*types.Transaction, error) {
  837. return _HermezAuctionProtocol.Contract.SetBootCoordinator(&_HermezAuctionProtocol.TransactOpts, newBootCoordinator)
  838. }
  839. // SetClosedAuctionSlots is a paid mutator transaction binding the contract method 0xd92bdda3.
  840. //
  841. // Solidity: function setClosedAuctionSlots(uint16 newClosedAuctionSlots) returns()
  842. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetClosedAuctionSlots(opts *bind.TransactOpts, newClosedAuctionSlots uint16) (*types.Transaction, error) {
  843. return _HermezAuctionProtocol.contract.Transact(opts, "setClosedAuctionSlots", newClosedAuctionSlots)
  844. }
  845. // SetClosedAuctionSlots is a paid mutator transaction binding the contract method 0xd92bdda3.
  846. //
  847. // Solidity: function setClosedAuctionSlots(uint16 newClosedAuctionSlots) returns()
  848. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetClosedAuctionSlots(newClosedAuctionSlots uint16) (*types.Transaction, error) {
  849. return _HermezAuctionProtocol.Contract.SetClosedAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newClosedAuctionSlots)
  850. }
  851. // SetClosedAuctionSlots is a paid mutator transaction binding the contract method 0xd92bdda3.
  852. //
  853. // Solidity: function setClosedAuctionSlots(uint16 newClosedAuctionSlots) returns()
  854. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetClosedAuctionSlots(newClosedAuctionSlots uint16) (*types.Transaction, error) {
  855. return _HermezAuctionProtocol.Contract.SetClosedAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newClosedAuctionSlots)
  856. }
  857. // SetCoordinator is a paid mutator transaction binding the contract method 0x0eeaf080.
  858. //
  859. // Solidity: function setCoordinator(address forger, string coordinatorURL) returns()
  860. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetCoordinator(opts *bind.TransactOpts, forger common.Address, coordinatorURL string) (*types.Transaction, error) {
  861. return _HermezAuctionProtocol.contract.Transact(opts, "setCoordinator", forger, coordinatorURL)
  862. }
  863. // SetCoordinator is a paid mutator transaction binding the contract method 0x0eeaf080.
  864. //
  865. // Solidity: function setCoordinator(address forger, string coordinatorURL) returns()
  866. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetCoordinator(forger common.Address, coordinatorURL string) (*types.Transaction, error) {
  867. return _HermezAuctionProtocol.Contract.SetCoordinator(&_HermezAuctionProtocol.TransactOpts, forger, coordinatorURL)
  868. }
  869. // SetCoordinator is a paid mutator transaction binding the contract method 0x0eeaf080.
  870. //
  871. // Solidity: function setCoordinator(address forger, string coordinatorURL) returns()
  872. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetCoordinator(forger common.Address, coordinatorURL string) (*types.Transaction, error) {
  873. return _HermezAuctionProtocol.Contract.SetCoordinator(&_HermezAuctionProtocol.TransactOpts, forger, coordinatorURL)
  874. }
  875. // SetDonationAddress is a paid mutator transaction binding the contract method 0x6f48e79b.
  876. //
  877. // Solidity: function setDonationAddress(address newDonationAddress) returns()
  878. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetDonationAddress(opts *bind.TransactOpts, newDonationAddress common.Address) (*types.Transaction, error) {
  879. return _HermezAuctionProtocol.contract.Transact(opts, "setDonationAddress", newDonationAddress)
  880. }
  881. // SetDonationAddress is a paid mutator transaction binding the contract method 0x6f48e79b.
  882. //
  883. // Solidity: function setDonationAddress(address newDonationAddress) returns()
  884. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetDonationAddress(newDonationAddress common.Address) (*types.Transaction, error) {
  885. return _HermezAuctionProtocol.Contract.SetDonationAddress(&_HermezAuctionProtocol.TransactOpts, newDonationAddress)
  886. }
  887. // SetDonationAddress is a paid mutator transaction binding the contract method 0x6f48e79b.
  888. //
  889. // Solidity: function setDonationAddress(address newDonationAddress) returns()
  890. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetDonationAddress(newDonationAddress common.Address) (*types.Transaction, error) {
  891. return _HermezAuctionProtocol.Contract.SetDonationAddress(&_HermezAuctionProtocol.TransactOpts, newDonationAddress)
  892. }
  893. // SetOpenAuctionSlots is a paid mutator transaction binding the contract method 0xc63de515.
  894. //
  895. // Solidity: function setOpenAuctionSlots(uint16 newOpenAuctionSlots) returns()
  896. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetOpenAuctionSlots(opts *bind.TransactOpts, newOpenAuctionSlots uint16) (*types.Transaction, error) {
  897. return _HermezAuctionProtocol.contract.Transact(opts, "setOpenAuctionSlots", newOpenAuctionSlots)
  898. }
  899. // SetOpenAuctionSlots is a paid mutator transaction binding the contract method 0xc63de515.
  900. //
  901. // Solidity: function setOpenAuctionSlots(uint16 newOpenAuctionSlots) returns()
  902. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetOpenAuctionSlots(newOpenAuctionSlots uint16) (*types.Transaction, error) {
  903. return _HermezAuctionProtocol.Contract.SetOpenAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newOpenAuctionSlots)
  904. }
  905. // SetOpenAuctionSlots is a paid mutator transaction binding the contract method 0xc63de515.
  906. //
  907. // Solidity: function setOpenAuctionSlots(uint16 newOpenAuctionSlots) returns()
  908. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetOpenAuctionSlots(newOpenAuctionSlots uint16) (*types.Transaction, error) {
  909. return _HermezAuctionProtocol.Contract.SetOpenAuctionSlots(&_HermezAuctionProtocol.TransactOpts, newOpenAuctionSlots)
  910. }
  911. // SetOutbidding is a paid mutator transaction binding the contract method 0xdfd5281b.
  912. //
  913. // Solidity: function setOutbidding(uint16 newOutbidding) returns()
  914. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetOutbidding(opts *bind.TransactOpts, newOutbidding uint16) (*types.Transaction, error) {
  915. return _HermezAuctionProtocol.contract.Transact(opts, "setOutbidding", newOutbidding)
  916. }
  917. // SetOutbidding is a paid mutator transaction binding the contract method 0xdfd5281b.
  918. //
  919. // Solidity: function setOutbidding(uint16 newOutbidding) returns()
  920. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetOutbidding(newOutbidding uint16) (*types.Transaction, error) {
  921. return _HermezAuctionProtocol.Contract.SetOutbidding(&_HermezAuctionProtocol.TransactOpts, newOutbidding)
  922. }
  923. // SetOutbidding is a paid mutator transaction binding the contract method 0xdfd5281b.
  924. //
  925. // Solidity: function setOutbidding(uint16 newOutbidding) returns()
  926. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetOutbidding(newOutbidding uint16) (*types.Transaction, error) {
  927. return _HermezAuctionProtocol.Contract.SetOutbidding(&_HermezAuctionProtocol.TransactOpts, newOutbidding)
  928. }
  929. // SetSlotDeadline is a paid mutator transaction binding the contract method 0x87e6b6bb.
  930. //
  931. // Solidity: function setSlotDeadline(uint8 newDeadline) returns()
  932. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactor) SetSlotDeadline(opts *bind.TransactOpts, newDeadline uint8) (*types.Transaction, error) {
  933. return _HermezAuctionProtocol.contract.Transact(opts, "setSlotDeadline", newDeadline)
  934. }
  935. // SetSlotDeadline is a paid mutator transaction binding the contract method 0x87e6b6bb.
  936. //
  937. // Solidity: function setSlotDeadline(uint8 newDeadline) returns()
  938. func (_HermezAuctionProtocol *HermezAuctionProtocolSession) SetSlotDeadline(newDeadline uint8) (*types.Transaction, error) {
  939. return _HermezAuctionProtocol.Contract.SetSlotDeadline(&_HermezAuctionProtocol.TransactOpts, newDeadline)
  940. }
  941. // SetSlotDeadline is a paid mutator transaction binding the contract method 0x87e6b6bb.
  942. //
  943. // Solidity: function setSlotDeadline(uint8 newDeadline) returns()
  944. func (_HermezAuctionProtocol *HermezAuctionProtocolTransactorSession) SetSlotDeadline(newDeadline uint8) (*types.Transaction, error) {
  945. return _HermezAuctionProtocol.Contract.SetSlotDeadline(&_HermezAuctionProtocol.TransactOpts, newDeadline)
  946. }
  947. // 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.
  948. type HermezAuctionProtocolHEZClaimedIterator struct {
  949. Event *HermezAuctionProtocolHEZClaimed // Event containing the contract specifics and raw log
  950. contract *bind.BoundContract // Generic contract to use for unpacking event data
  951. event string // Event name to use for unpacking event data
  952. logs chan types.Log // Log channel receiving the found contract events
  953. sub ethereum.Subscription // Subscription for errors, completion and termination
  954. done bool // Whether the subscription completed delivering logs
  955. fail error // Occurred error to stop iteration
  956. }
  957. // Next advances the iterator to the subsequent event, returning whether there
  958. // are any more events found. In case of a retrieval or parsing error, false is
  959. // returned and Error() can be queried for the exact failure.
  960. func (it *HermezAuctionProtocolHEZClaimedIterator) Next() bool {
  961. // If the iterator failed, stop iterating
  962. if it.fail != nil {
  963. return false
  964. }
  965. // If the iterator completed, deliver directly whatever's available
  966. if it.done {
  967. select {
  968. case log := <-it.logs:
  969. it.Event = new(HermezAuctionProtocolHEZClaimed)
  970. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  971. it.fail = err
  972. return false
  973. }
  974. it.Event.Raw = log
  975. return true
  976. default:
  977. return false
  978. }
  979. }
  980. // Iterator still in progress, wait for either a data or an error event
  981. select {
  982. case log := <-it.logs:
  983. it.Event = new(HermezAuctionProtocolHEZClaimed)
  984. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  985. it.fail = err
  986. return false
  987. }
  988. it.Event.Raw = log
  989. return true
  990. case err := <-it.sub.Err():
  991. it.done = true
  992. it.fail = err
  993. return it.Next()
  994. }
  995. }
  996. // Error returns any retrieval or parsing error occurred during filtering.
  997. func (it *HermezAuctionProtocolHEZClaimedIterator) Error() error {
  998. return it.fail
  999. }
  1000. // Close terminates the iteration process, releasing any pending underlying
  1001. // resources.
  1002. func (it *HermezAuctionProtocolHEZClaimedIterator) Close() error {
  1003. it.sub.Unsubscribe()
  1004. return nil
  1005. }
  1006. // HermezAuctionProtocolHEZClaimed represents a HEZClaimed event raised by the HermezAuctionProtocol contract.
  1007. type HermezAuctionProtocolHEZClaimed struct {
  1008. Owner common.Address
  1009. Amount *big.Int
  1010. Raw types.Log // Blockchain specific contextual infos
  1011. }
  1012. // FilterHEZClaimed is a free log retrieval operation binding the contract event 0x199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f.
  1013. //
  1014. // Solidity: event HEZClaimed(address indexed owner, uint128 amount)
  1015. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterHEZClaimed(opts *bind.FilterOpts, owner []common.Address) (*HermezAuctionProtocolHEZClaimedIterator, error) {
  1016. var ownerRule []interface{}
  1017. for _, ownerItem := range owner {
  1018. ownerRule = append(ownerRule, ownerItem)
  1019. }
  1020. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "HEZClaimed", ownerRule)
  1021. if err != nil {
  1022. return nil, err
  1023. }
  1024. return &HermezAuctionProtocolHEZClaimedIterator{contract: _HermezAuctionProtocol.contract, event: "HEZClaimed", logs: logs, sub: sub}, nil
  1025. }
  1026. // WatchHEZClaimed is a free log subscription operation binding the contract event 0x199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f.
  1027. //
  1028. // Solidity: event HEZClaimed(address indexed owner, uint128 amount)
  1029. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchHEZClaimed(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolHEZClaimed, owner []common.Address) (event.Subscription, error) {
  1030. var ownerRule []interface{}
  1031. for _, ownerItem := range owner {
  1032. ownerRule = append(ownerRule, ownerItem)
  1033. }
  1034. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "HEZClaimed", ownerRule)
  1035. if err != nil {
  1036. return nil, err
  1037. }
  1038. return event.NewSubscription(func(quit <-chan struct{}) error {
  1039. defer sub.Unsubscribe()
  1040. for {
  1041. select {
  1042. case log := <-logs:
  1043. // New log arrived, parse the event and forward to the user
  1044. event := new(HermezAuctionProtocolHEZClaimed)
  1045. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "HEZClaimed", log); err != nil {
  1046. return err
  1047. }
  1048. event.Raw = log
  1049. select {
  1050. case sink <- event:
  1051. case err := <-sub.Err():
  1052. return err
  1053. case <-quit:
  1054. return nil
  1055. }
  1056. case err := <-sub.Err():
  1057. return err
  1058. case <-quit:
  1059. return nil
  1060. }
  1061. }
  1062. }), nil
  1063. }
  1064. // ParseHEZClaimed is a log parse operation binding the contract event 0x199ef0cb54d2b296ff6eaec2721bacf0ca3fd8344a43f5bdf4548b34dfa2594f.
  1065. //
  1066. // Solidity: event HEZClaimed(address indexed owner, uint128 amount)
  1067. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseHEZClaimed(log types.Log) (*HermezAuctionProtocolHEZClaimed, error) {
  1068. event := new(HermezAuctionProtocolHEZClaimed)
  1069. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "HEZClaimed", log); err != nil {
  1070. return nil, err
  1071. }
  1072. return event, nil
  1073. }
  1074. // 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.
  1075. type HermezAuctionProtocolNewAllocationRatioIterator struct {
  1076. Event *HermezAuctionProtocolNewAllocationRatio // Event containing the contract specifics and raw log
  1077. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1078. event string // Event name to use for unpacking event data
  1079. logs chan types.Log // Log channel receiving the found contract events
  1080. sub ethereum.Subscription // Subscription for errors, completion and termination
  1081. done bool // Whether the subscription completed delivering logs
  1082. fail error // Occurred error to stop iteration
  1083. }
  1084. // Next advances the iterator to the subsequent event, returning whether there
  1085. // are any more events found. In case of a retrieval or parsing error, false is
  1086. // returned and Error() can be queried for the exact failure.
  1087. func (it *HermezAuctionProtocolNewAllocationRatioIterator) Next() bool {
  1088. // If the iterator failed, stop iterating
  1089. if it.fail != nil {
  1090. return false
  1091. }
  1092. // If the iterator completed, deliver directly whatever's available
  1093. if it.done {
  1094. select {
  1095. case log := <-it.logs:
  1096. it.Event = new(HermezAuctionProtocolNewAllocationRatio)
  1097. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1098. it.fail = err
  1099. return false
  1100. }
  1101. it.Event.Raw = log
  1102. return true
  1103. default:
  1104. return false
  1105. }
  1106. }
  1107. // Iterator still in progress, wait for either a data or an error event
  1108. select {
  1109. case log := <-it.logs:
  1110. it.Event = new(HermezAuctionProtocolNewAllocationRatio)
  1111. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1112. it.fail = err
  1113. return false
  1114. }
  1115. it.Event.Raw = log
  1116. return true
  1117. case err := <-it.sub.Err():
  1118. it.done = true
  1119. it.fail = err
  1120. return it.Next()
  1121. }
  1122. }
  1123. // Error returns any retrieval or parsing error occurred during filtering.
  1124. func (it *HermezAuctionProtocolNewAllocationRatioIterator) Error() error {
  1125. return it.fail
  1126. }
  1127. // Close terminates the iteration process, releasing any pending underlying
  1128. // resources.
  1129. func (it *HermezAuctionProtocolNewAllocationRatioIterator) Close() error {
  1130. it.sub.Unsubscribe()
  1131. return nil
  1132. }
  1133. // HermezAuctionProtocolNewAllocationRatio represents a NewAllocationRatio event raised by the HermezAuctionProtocol contract.
  1134. type HermezAuctionProtocolNewAllocationRatio struct {
  1135. NewAllocationRatio [3]uint16
  1136. Raw types.Log // Blockchain specific contextual infos
  1137. }
  1138. // FilterNewAllocationRatio is a free log retrieval operation binding the contract event 0x0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e4.
  1139. //
  1140. // Solidity: event NewAllocationRatio(uint16[3] newAllocationRatio)
  1141. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewAllocationRatio(opts *bind.FilterOpts) (*HermezAuctionProtocolNewAllocationRatioIterator, error) {
  1142. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewAllocationRatio")
  1143. if err != nil {
  1144. return nil, err
  1145. }
  1146. return &HermezAuctionProtocolNewAllocationRatioIterator{contract: _HermezAuctionProtocol.contract, event: "NewAllocationRatio", logs: logs, sub: sub}, nil
  1147. }
  1148. // WatchNewAllocationRatio is a free log subscription operation binding the contract event 0x0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e4.
  1149. //
  1150. // Solidity: event NewAllocationRatio(uint16[3] newAllocationRatio)
  1151. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewAllocationRatio(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewAllocationRatio) (event.Subscription, error) {
  1152. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewAllocationRatio")
  1153. if err != nil {
  1154. return nil, err
  1155. }
  1156. return event.NewSubscription(func(quit <-chan struct{}) error {
  1157. defer sub.Unsubscribe()
  1158. for {
  1159. select {
  1160. case log := <-logs:
  1161. // New log arrived, parse the event and forward to the user
  1162. event := new(HermezAuctionProtocolNewAllocationRatio)
  1163. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewAllocationRatio", log); err != nil {
  1164. return err
  1165. }
  1166. event.Raw = log
  1167. select {
  1168. case sink <- event:
  1169. case err := <-sub.Err():
  1170. return err
  1171. case <-quit:
  1172. return nil
  1173. }
  1174. case err := <-sub.Err():
  1175. return err
  1176. case <-quit:
  1177. return nil
  1178. }
  1179. }
  1180. }), nil
  1181. }
  1182. // ParseNewAllocationRatio is a log parse operation binding the contract event 0x0bb59eceb12f1bdb63e4a7d57c70d6473fefd7c3f51af5a3604f7e97197073e4.
  1183. //
  1184. // Solidity: event NewAllocationRatio(uint16[3] newAllocationRatio)
  1185. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewAllocationRatio(log types.Log) (*HermezAuctionProtocolNewAllocationRatio, error) {
  1186. event := new(HermezAuctionProtocolNewAllocationRatio)
  1187. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewAllocationRatio", log); err != nil {
  1188. return nil, err
  1189. }
  1190. return event, nil
  1191. }
  1192. // 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.
  1193. type HermezAuctionProtocolNewBidIterator struct {
  1194. Event *HermezAuctionProtocolNewBid // Event containing the contract specifics and raw log
  1195. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1196. event string // Event name to use for unpacking event data
  1197. logs chan types.Log // Log channel receiving the found contract events
  1198. sub ethereum.Subscription // Subscription for errors, completion and termination
  1199. done bool // Whether the subscription completed delivering logs
  1200. fail error // Occurred error to stop iteration
  1201. }
  1202. // Next advances the iterator to the subsequent event, returning whether there
  1203. // are any more events found. In case of a retrieval or parsing error, false is
  1204. // returned and Error() can be queried for the exact failure.
  1205. func (it *HermezAuctionProtocolNewBidIterator) Next() bool {
  1206. // If the iterator failed, stop iterating
  1207. if it.fail != nil {
  1208. return false
  1209. }
  1210. // If the iterator completed, deliver directly whatever's available
  1211. if it.done {
  1212. select {
  1213. case log := <-it.logs:
  1214. it.Event = new(HermezAuctionProtocolNewBid)
  1215. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1216. it.fail = err
  1217. return false
  1218. }
  1219. it.Event.Raw = log
  1220. return true
  1221. default:
  1222. return false
  1223. }
  1224. }
  1225. // Iterator still in progress, wait for either a data or an error event
  1226. select {
  1227. case log := <-it.logs:
  1228. it.Event = new(HermezAuctionProtocolNewBid)
  1229. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1230. it.fail = err
  1231. return false
  1232. }
  1233. it.Event.Raw = log
  1234. return true
  1235. case err := <-it.sub.Err():
  1236. it.done = true
  1237. it.fail = err
  1238. return it.Next()
  1239. }
  1240. }
  1241. // Error returns any retrieval or parsing error occurred during filtering.
  1242. func (it *HermezAuctionProtocolNewBidIterator) Error() error {
  1243. return it.fail
  1244. }
  1245. // Close terminates the iteration process, releasing any pending underlying
  1246. // resources.
  1247. func (it *HermezAuctionProtocolNewBidIterator) Close() error {
  1248. it.sub.Unsubscribe()
  1249. return nil
  1250. }
  1251. // HermezAuctionProtocolNewBid represents a NewBid event raised by the HermezAuctionProtocol contract.
  1252. type HermezAuctionProtocolNewBid struct {
  1253. Slot *big.Int
  1254. BidAmount *big.Int
  1255. Bidder common.Address
  1256. Raw types.Log // Blockchain specific contextual infos
  1257. }
  1258. // FilterNewBid is a free log retrieval operation binding the contract event 0xd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e433.
  1259. //
  1260. // Solidity: event NewBid(uint128 indexed slot, uint128 bidAmount, address indexed bidder)
  1261. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewBid(opts *bind.FilterOpts, slot []*big.Int, bidder []common.Address) (*HermezAuctionProtocolNewBidIterator, error) {
  1262. var slotRule []interface{}
  1263. for _, slotItem := range slot {
  1264. slotRule = append(slotRule, slotItem)
  1265. }
  1266. var bidderRule []interface{}
  1267. for _, bidderItem := range bidder {
  1268. bidderRule = append(bidderRule, bidderItem)
  1269. }
  1270. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewBid", slotRule, bidderRule)
  1271. if err != nil {
  1272. return nil, err
  1273. }
  1274. return &HermezAuctionProtocolNewBidIterator{contract: _HermezAuctionProtocol.contract, event: "NewBid", logs: logs, sub: sub}, nil
  1275. }
  1276. // WatchNewBid is a free log subscription operation binding the contract event 0xd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e433.
  1277. //
  1278. // Solidity: event NewBid(uint128 indexed slot, uint128 bidAmount, address indexed bidder)
  1279. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewBid(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewBid, slot []*big.Int, bidder []common.Address) (event.Subscription, error) {
  1280. var slotRule []interface{}
  1281. for _, slotItem := range slot {
  1282. slotRule = append(slotRule, slotItem)
  1283. }
  1284. var bidderRule []interface{}
  1285. for _, bidderItem := range bidder {
  1286. bidderRule = append(bidderRule, bidderItem)
  1287. }
  1288. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewBid", slotRule, bidderRule)
  1289. if err != nil {
  1290. return nil, err
  1291. }
  1292. return event.NewSubscription(func(quit <-chan struct{}) error {
  1293. defer sub.Unsubscribe()
  1294. for {
  1295. select {
  1296. case log := <-logs:
  1297. // New log arrived, parse the event and forward to the user
  1298. event := new(HermezAuctionProtocolNewBid)
  1299. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBid", log); err != nil {
  1300. return err
  1301. }
  1302. event.Raw = log
  1303. select {
  1304. case sink <- event:
  1305. case err := <-sub.Err():
  1306. return err
  1307. case <-quit:
  1308. return nil
  1309. }
  1310. case err := <-sub.Err():
  1311. return err
  1312. case <-quit:
  1313. return nil
  1314. }
  1315. }
  1316. }), nil
  1317. }
  1318. // ParseNewBid is a log parse operation binding the contract event 0xd48e8329cdb2fb109b4fe445d7b681a74b256bff16e6f7f33b9d4fbe9038e433.
  1319. //
  1320. // Solidity: event NewBid(uint128 indexed slot, uint128 bidAmount, address indexed bidder)
  1321. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewBid(log types.Log) (*HermezAuctionProtocolNewBid, error) {
  1322. event := new(HermezAuctionProtocolNewBid)
  1323. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBid", log); err != nil {
  1324. return nil, err
  1325. }
  1326. return event, nil
  1327. }
  1328. // 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.
  1329. type HermezAuctionProtocolNewBootCoordinatorIterator struct {
  1330. Event *HermezAuctionProtocolNewBootCoordinator // Event containing the contract specifics and raw log
  1331. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1332. event string // Event name to use for unpacking event data
  1333. logs chan types.Log // Log channel receiving the found contract events
  1334. sub ethereum.Subscription // Subscription for errors, completion and termination
  1335. done bool // Whether the subscription completed delivering logs
  1336. fail error // Occurred error to stop iteration
  1337. }
  1338. // Next advances the iterator to the subsequent event, returning whether there
  1339. // are any more events found. In case of a retrieval or parsing error, false is
  1340. // returned and Error() can be queried for the exact failure.
  1341. func (it *HermezAuctionProtocolNewBootCoordinatorIterator) Next() bool {
  1342. // If the iterator failed, stop iterating
  1343. if it.fail != nil {
  1344. return false
  1345. }
  1346. // If the iterator completed, deliver directly whatever's available
  1347. if it.done {
  1348. select {
  1349. case log := <-it.logs:
  1350. it.Event = new(HermezAuctionProtocolNewBootCoordinator)
  1351. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1352. it.fail = err
  1353. return false
  1354. }
  1355. it.Event.Raw = log
  1356. return true
  1357. default:
  1358. return false
  1359. }
  1360. }
  1361. // Iterator still in progress, wait for either a data or an error event
  1362. select {
  1363. case log := <-it.logs:
  1364. it.Event = new(HermezAuctionProtocolNewBootCoordinator)
  1365. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1366. it.fail = err
  1367. return false
  1368. }
  1369. it.Event.Raw = log
  1370. return true
  1371. case err := <-it.sub.Err():
  1372. it.done = true
  1373. it.fail = err
  1374. return it.Next()
  1375. }
  1376. }
  1377. // Error returns any retrieval or parsing error occurred during filtering.
  1378. func (it *HermezAuctionProtocolNewBootCoordinatorIterator) Error() error {
  1379. return it.fail
  1380. }
  1381. // Close terminates the iteration process, releasing any pending underlying
  1382. // resources.
  1383. func (it *HermezAuctionProtocolNewBootCoordinatorIterator) Close() error {
  1384. it.sub.Unsubscribe()
  1385. return nil
  1386. }
  1387. // HermezAuctionProtocolNewBootCoordinator represents a NewBootCoordinator event raised by the HermezAuctionProtocol contract.
  1388. type HermezAuctionProtocolNewBootCoordinator struct {
  1389. NewBootCoordinator common.Address
  1390. Raw types.Log // Blockchain specific contextual infos
  1391. }
  1392. // FilterNewBootCoordinator is a free log retrieval operation binding the contract event 0x2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be55.
  1393. //
  1394. // Solidity: event NewBootCoordinator(address indexed newBootCoordinator)
  1395. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewBootCoordinator(opts *bind.FilterOpts, newBootCoordinator []common.Address) (*HermezAuctionProtocolNewBootCoordinatorIterator, error) {
  1396. var newBootCoordinatorRule []interface{}
  1397. for _, newBootCoordinatorItem := range newBootCoordinator {
  1398. newBootCoordinatorRule = append(newBootCoordinatorRule, newBootCoordinatorItem)
  1399. }
  1400. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewBootCoordinator", newBootCoordinatorRule)
  1401. if err != nil {
  1402. return nil, err
  1403. }
  1404. return &HermezAuctionProtocolNewBootCoordinatorIterator{contract: _HermezAuctionProtocol.contract, event: "NewBootCoordinator", logs: logs, sub: sub}, nil
  1405. }
  1406. // WatchNewBootCoordinator is a free log subscription operation binding the contract event 0x2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be55.
  1407. //
  1408. // Solidity: event NewBootCoordinator(address indexed newBootCoordinator)
  1409. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewBootCoordinator(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewBootCoordinator, newBootCoordinator []common.Address) (event.Subscription, error) {
  1410. var newBootCoordinatorRule []interface{}
  1411. for _, newBootCoordinatorItem := range newBootCoordinator {
  1412. newBootCoordinatorRule = append(newBootCoordinatorRule, newBootCoordinatorItem)
  1413. }
  1414. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewBootCoordinator", newBootCoordinatorRule)
  1415. if err != nil {
  1416. return nil, err
  1417. }
  1418. return event.NewSubscription(func(quit <-chan struct{}) error {
  1419. defer sub.Unsubscribe()
  1420. for {
  1421. select {
  1422. case log := <-logs:
  1423. // New log arrived, parse the event and forward to the user
  1424. event := new(HermezAuctionProtocolNewBootCoordinator)
  1425. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBootCoordinator", log); err != nil {
  1426. return err
  1427. }
  1428. event.Raw = log
  1429. select {
  1430. case sink <- event:
  1431. case err := <-sub.Err():
  1432. return err
  1433. case <-quit:
  1434. return nil
  1435. }
  1436. case err := <-sub.Err():
  1437. return err
  1438. case <-quit:
  1439. return nil
  1440. }
  1441. }
  1442. }), nil
  1443. }
  1444. // ParseNewBootCoordinator is a log parse operation binding the contract event 0x2161bd0f0e056d18046a81683e5bc845980367451cf4ca5148523a147c51be55.
  1445. //
  1446. // Solidity: event NewBootCoordinator(address indexed newBootCoordinator)
  1447. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewBootCoordinator(log types.Log) (*HermezAuctionProtocolNewBootCoordinator, error) {
  1448. event := new(HermezAuctionProtocolNewBootCoordinator)
  1449. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewBootCoordinator", log); err != nil {
  1450. return nil, err
  1451. }
  1452. return event, nil
  1453. }
  1454. // 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.
  1455. type HermezAuctionProtocolNewClosedAuctionSlotsIterator struct {
  1456. Event *HermezAuctionProtocolNewClosedAuctionSlots // Event containing the contract specifics and raw log
  1457. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1458. event string // Event name to use for unpacking event data
  1459. logs chan types.Log // Log channel receiving the found contract events
  1460. sub ethereum.Subscription // Subscription for errors, completion and termination
  1461. done bool // Whether the subscription completed delivering logs
  1462. fail error // Occurred error to stop iteration
  1463. }
  1464. // Next advances the iterator to the subsequent event, returning whether there
  1465. // are any more events found. In case of a retrieval or parsing error, false is
  1466. // returned and Error() can be queried for the exact failure.
  1467. func (it *HermezAuctionProtocolNewClosedAuctionSlotsIterator) Next() bool {
  1468. // If the iterator failed, stop iterating
  1469. if it.fail != nil {
  1470. return false
  1471. }
  1472. // If the iterator completed, deliver directly whatever's available
  1473. if it.done {
  1474. select {
  1475. case log := <-it.logs:
  1476. it.Event = new(HermezAuctionProtocolNewClosedAuctionSlots)
  1477. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1478. it.fail = err
  1479. return false
  1480. }
  1481. it.Event.Raw = log
  1482. return true
  1483. default:
  1484. return false
  1485. }
  1486. }
  1487. // Iterator still in progress, wait for either a data or an error event
  1488. select {
  1489. case log := <-it.logs:
  1490. it.Event = new(HermezAuctionProtocolNewClosedAuctionSlots)
  1491. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1492. it.fail = err
  1493. return false
  1494. }
  1495. it.Event.Raw = log
  1496. return true
  1497. case err := <-it.sub.Err():
  1498. it.done = true
  1499. it.fail = err
  1500. return it.Next()
  1501. }
  1502. }
  1503. // Error returns any retrieval or parsing error occurred during filtering.
  1504. func (it *HermezAuctionProtocolNewClosedAuctionSlotsIterator) Error() error {
  1505. return it.fail
  1506. }
  1507. // Close terminates the iteration process, releasing any pending underlying
  1508. // resources.
  1509. func (it *HermezAuctionProtocolNewClosedAuctionSlotsIterator) Close() error {
  1510. it.sub.Unsubscribe()
  1511. return nil
  1512. }
  1513. // HermezAuctionProtocolNewClosedAuctionSlots represents a NewClosedAuctionSlots event raised by the HermezAuctionProtocol contract.
  1514. type HermezAuctionProtocolNewClosedAuctionSlots struct {
  1515. NewClosedAuctionSlots uint16
  1516. Raw types.Log // Blockchain specific contextual infos
  1517. }
  1518. // FilterNewClosedAuctionSlots is a free log retrieval operation binding the contract event 0xc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea.
  1519. //
  1520. // Solidity: event NewClosedAuctionSlots(uint16 newClosedAuctionSlots)
  1521. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewClosedAuctionSlots(opts *bind.FilterOpts) (*HermezAuctionProtocolNewClosedAuctionSlotsIterator, error) {
  1522. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewClosedAuctionSlots")
  1523. if err != nil {
  1524. return nil, err
  1525. }
  1526. return &HermezAuctionProtocolNewClosedAuctionSlotsIterator{contract: _HermezAuctionProtocol.contract, event: "NewClosedAuctionSlots", logs: logs, sub: sub}, nil
  1527. }
  1528. // WatchNewClosedAuctionSlots is a free log subscription operation binding the contract event 0xc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea.
  1529. //
  1530. // Solidity: event NewClosedAuctionSlots(uint16 newClosedAuctionSlots)
  1531. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewClosedAuctionSlots(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewClosedAuctionSlots) (event.Subscription, error) {
  1532. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewClosedAuctionSlots")
  1533. if err != nil {
  1534. return nil, err
  1535. }
  1536. return event.NewSubscription(func(quit <-chan struct{}) error {
  1537. defer sub.Unsubscribe()
  1538. for {
  1539. select {
  1540. case log := <-logs:
  1541. // New log arrived, parse the event and forward to the user
  1542. event := new(HermezAuctionProtocolNewClosedAuctionSlots)
  1543. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewClosedAuctionSlots", log); err != nil {
  1544. return err
  1545. }
  1546. event.Raw = log
  1547. select {
  1548. case sink <- event:
  1549. case err := <-sub.Err():
  1550. return err
  1551. case <-quit:
  1552. return nil
  1553. }
  1554. case err := <-sub.Err():
  1555. return err
  1556. case <-quit:
  1557. return nil
  1558. }
  1559. }
  1560. }), nil
  1561. }
  1562. // ParseNewClosedAuctionSlots is a log parse operation binding the contract event 0xc78051d3757db196b1e445f3a9a1380944518c69b5d7922ec747c54f0340a4ea.
  1563. //
  1564. // Solidity: event NewClosedAuctionSlots(uint16 newClosedAuctionSlots)
  1565. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewClosedAuctionSlots(log types.Log) (*HermezAuctionProtocolNewClosedAuctionSlots, error) {
  1566. event := new(HermezAuctionProtocolNewClosedAuctionSlots)
  1567. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewClosedAuctionSlots", log); err != nil {
  1568. return nil, err
  1569. }
  1570. return event, nil
  1571. }
  1572. // 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.
  1573. type HermezAuctionProtocolNewDefaultSlotSetBidIterator struct {
  1574. Event *HermezAuctionProtocolNewDefaultSlotSetBid // Event containing the contract specifics and raw log
  1575. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1576. event string // Event name to use for unpacking event data
  1577. logs chan types.Log // Log channel receiving the found contract events
  1578. sub ethereum.Subscription // Subscription for errors, completion and termination
  1579. done bool // Whether the subscription completed delivering logs
  1580. fail error // Occurred error to stop iteration
  1581. }
  1582. // Next advances the iterator to the subsequent event, returning whether there
  1583. // are any more events found. In case of a retrieval or parsing error, false is
  1584. // returned and Error() can be queried for the exact failure.
  1585. func (it *HermezAuctionProtocolNewDefaultSlotSetBidIterator) Next() bool {
  1586. // If the iterator failed, stop iterating
  1587. if it.fail != nil {
  1588. return false
  1589. }
  1590. // If the iterator completed, deliver directly whatever's available
  1591. if it.done {
  1592. select {
  1593. case log := <-it.logs:
  1594. it.Event = new(HermezAuctionProtocolNewDefaultSlotSetBid)
  1595. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1596. it.fail = err
  1597. return false
  1598. }
  1599. it.Event.Raw = log
  1600. return true
  1601. default:
  1602. return false
  1603. }
  1604. }
  1605. // Iterator still in progress, wait for either a data or an error event
  1606. select {
  1607. case log := <-it.logs:
  1608. it.Event = new(HermezAuctionProtocolNewDefaultSlotSetBid)
  1609. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1610. it.fail = err
  1611. return false
  1612. }
  1613. it.Event.Raw = log
  1614. return true
  1615. case err := <-it.sub.Err():
  1616. it.done = true
  1617. it.fail = err
  1618. return it.Next()
  1619. }
  1620. }
  1621. // Error returns any retrieval or parsing error occurred during filtering.
  1622. func (it *HermezAuctionProtocolNewDefaultSlotSetBidIterator) Error() error {
  1623. return it.fail
  1624. }
  1625. // Close terminates the iteration process, releasing any pending underlying
  1626. // resources.
  1627. func (it *HermezAuctionProtocolNewDefaultSlotSetBidIterator) Close() error {
  1628. it.sub.Unsubscribe()
  1629. return nil
  1630. }
  1631. // HermezAuctionProtocolNewDefaultSlotSetBid represents a NewDefaultSlotSetBid event raised by the HermezAuctionProtocol contract.
  1632. type HermezAuctionProtocolNewDefaultSlotSetBid struct {
  1633. SlotSet *big.Int
  1634. NewInitialMinBid *big.Int
  1635. Raw types.Log // Blockchain specific contextual infos
  1636. }
  1637. // FilterNewDefaultSlotSetBid is a free log retrieval operation binding the contract event 0xa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172.
  1638. //
  1639. // Solidity: event NewDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid)
  1640. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewDefaultSlotSetBid(opts *bind.FilterOpts) (*HermezAuctionProtocolNewDefaultSlotSetBidIterator, error) {
  1641. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewDefaultSlotSetBid")
  1642. if err != nil {
  1643. return nil, err
  1644. }
  1645. return &HermezAuctionProtocolNewDefaultSlotSetBidIterator{contract: _HermezAuctionProtocol.contract, event: "NewDefaultSlotSetBid", logs: logs, sub: sub}, nil
  1646. }
  1647. // WatchNewDefaultSlotSetBid is a free log subscription operation binding the contract event 0xa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172.
  1648. //
  1649. // Solidity: event NewDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid)
  1650. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewDefaultSlotSetBid(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewDefaultSlotSetBid) (event.Subscription, error) {
  1651. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewDefaultSlotSetBid")
  1652. if err != nil {
  1653. return nil, err
  1654. }
  1655. return event.NewSubscription(func(quit <-chan struct{}) error {
  1656. defer sub.Unsubscribe()
  1657. for {
  1658. select {
  1659. case log := <-logs:
  1660. // New log arrived, parse the event and forward to the user
  1661. event := new(HermezAuctionProtocolNewDefaultSlotSetBid)
  1662. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDefaultSlotSetBid", log); err != nil {
  1663. return err
  1664. }
  1665. event.Raw = log
  1666. select {
  1667. case sink <- event:
  1668. case err := <-sub.Err():
  1669. return err
  1670. case <-quit:
  1671. return nil
  1672. }
  1673. case err := <-sub.Err():
  1674. return err
  1675. case <-quit:
  1676. return nil
  1677. }
  1678. }
  1679. }), nil
  1680. }
  1681. // ParseNewDefaultSlotSetBid is a log parse operation binding the contract event 0xa922aa010d1ff8e70b2aa9247d891836795c3d3ba2a543c37c91a44dc4a50172.
  1682. //
  1683. // Solidity: event NewDefaultSlotSetBid(uint128 slotSet, uint128 newInitialMinBid)
  1684. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewDefaultSlotSetBid(log types.Log) (*HermezAuctionProtocolNewDefaultSlotSetBid, error) {
  1685. event := new(HermezAuctionProtocolNewDefaultSlotSetBid)
  1686. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDefaultSlotSetBid", log); err != nil {
  1687. return nil, err
  1688. }
  1689. return event, nil
  1690. }
  1691. // 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.
  1692. type HermezAuctionProtocolNewDonationAddressIterator struct {
  1693. Event *HermezAuctionProtocolNewDonationAddress // Event containing the contract specifics and raw log
  1694. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1695. event string // Event name to use for unpacking event data
  1696. logs chan types.Log // Log channel receiving the found contract events
  1697. sub ethereum.Subscription // Subscription for errors, completion and termination
  1698. done bool // Whether the subscription completed delivering logs
  1699. fail error // Occurred error to stop iteration
  1700. }
  1701. // Next advances the iterator to the subsequent event, returning whether there
  1702. // are any more events found. In case of a retrieval or parsing error, false is
  1703. // returned and Error() can be queried for the exact failure.
  1704. func (it *HermezAuctionProtocolNewDonationAddressIterator) Next() bool {
  1705. // If the iterator failed, stop iterating
  1706. if it.fail != nil {
  1707. return false
  1708. }
  1709. // If the iterator completed, deliver directly whatever's available
  1710. if it.done {
  1711. select {
  1712. case log := <-it.logs:
  1713. it.Event = new(HermezAuctionProtocolNewDonationAddress)
  1714. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1715. it.fail = err
  1716. return false
  1717. }
  1718. it.Event.Raw = log
  1719. return true
  1720. default:
  1721. return false
  1722. }
  1723. }
  1724. // Iterator still in progress, wait for either a data or an error event
  1725. select {
  1726. case log := <-it.logs:
  1727. it.Event = new(HermezAuctionProtocolNewDonationAddress)
  1728. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1729. it.fail = err
  1730. return false
  1731. }
  1732. it.Event.Raw = log
  1733. return true
  1734. case err := <-it.sub.Err():
  1735. it.done = true
  1736. it.fail = err
  1737. return it.Next()
  1738. }
  1739. }
  1740. // Error returns any retrieval or parsing error occurred during filtering.
  1741. func (it *HermezAuctionProtocolNewDonationAddressIterator) Error() error {
  1742. return it.fail
  1743. }
  1744. // Close terminates the iteration process, releasing any pending underlying
  1745. // resources.
  1746. func (it *HermezAuctionProtocolNewDonationAddressIterator) Close() error {
  1747. it.sub.Unsubscribe()
  1748. return nil
  1749. }
  1750. // HermezAuctionProtocolNewDonationAddress represents a NewDonationAddress event raised by the HermezAuctionProtocol contract.
  1751. type HermezAuctionProtocolNewDonationAddress struct {
  1752. NewDonationAddress common.Address
  1753. Raw types.Log // Blockchain specific contextual infos
  1754. }
  1755. // FilterNewDonationAddress is a free log retrieval operation binding the contract event 0xa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd7.
  1756. //
  1757. // Solidity: event NewDonationAddress(address indexed newDonationAddress)
  1758. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewDonationAddress(opts *bind.FilterOpts, newDonationAddress []common.Address) (*HermezAuctionProtocolNewDonationAddressIterator, error) {
  1759. var newDonationAddressRule []interface{}
  1760. for _, newDonationAddressItem := range newDonationAddress {
  1761. newDonationAddressRule = append(newDonationAddressRule, newDonationAddressItem)
  1762. }
  1763. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewDonationAddress", newDonationAddressRule)
  1764. if err != nil {
  1765. return nil, err
  1766. }
  1767. return &HermezAuctionProtocolNewDonationAddressIterator{contract: _HermezAuctionProtocol.contract, event: "NewDonationAddress", logs: logs, sub: sub}, nil
  1768. }
  1769. // WatchNewDonationAddress is a free log subscription operation binding the contract event 0xa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd7.
  1770. //
  1771. // Solidity: event NewDonationAddress(address indexed newDonationAddress)
  1772. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewDonationAddress(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewDonationAddress, newDonationAddress []common.Address) (event.Subscription, error) {
  1773. var newDonationAddressRule []interface{}
  1774. for _, newDonationAddressItem := range newDonationAddress {
  1775. newDonationAddressRule = append(newDonationAddressRule, newDonationAddressItem)
  1776. }
  1777. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewDonationAddress", newDonationAddressRule)
  1778. if err != nil {
  1779. return nil, err
  1780. }
  1781. return event.NewSubscription(func(quit <-chan struct{}) error {
  1782. defer sub.Unsubscribe()
  1783. for {
  1784. select {
  1785. case log := <-logs:
  1786. // New log arrived, parse the event and forward to the user
  1787. event := new(HermezAuctionProtocolNewDonationAddress)
  1788. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDonationAddress", log); err != nil {
  1789. return err
  1790. }
  1791. event.Raw = log
  1792. select {
  1793. case sink <- event:
  1794. case err := <-sub.Err():
  1795. return err
  1796. case <-quit:
  1797. return nil
  1798. }
  1799. case err := <-sub.Err():
  1800. return err
  1801. case <-quit:
  1802. return nil
  1803. }
  1804. }
  1805. }), nil
  1806. }
  1807. // ParseNewDonationAddress is a log parse operation binding the contract event 0xa62863cbad1647a2855e9cd39d04fa6dfd32e1b9cfaff1aaf6523f4aaafeccd7.
  1808. //
  1809. // Solidity: event NewDonationAddress(address indexed newDonationAddress)
  1810. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewDonationAddress(log types.Log) (*HermezAuctionProtocolNewDonationAddress, error) {
  1811. event := new(HermezAuctionProtocolNewDonationAddress)
  1812. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewDonationAddress", log); err != nil {
  1813. return nil, err
  1814. }
  1815. return event, nil
  1816. }
  1817. // 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.
  1818. type HermezAuctionProtocolNewForgeIterator struct {
  1819. Event *HermezAuctionProtocolNewForge // Event containing the contract specifics and raw log
  1820. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1821. event string // Event name to use for unpacking event data
  1822. logs chan types.Log // Log channel receiving the found contract events
  1823. sub ethereum.Subscription // Subscription for errors, completion and termination
  1824. done bool // Whether the subscription completed delivering logs
  1825. fail error // Occurred error to stop iteration
  1826. }
  1827. // Next advances the iterator to the subsequent event, returning whether there
  1828. // are any more events found. In case of a retrieval or parsing error, false is
  1829. // returned and Error() can be queried for the exact failure.
  1830. func (it *HermezAuctionProtocolNewForgeIterator) Next() bool {
  1831. // If the iterator failed, stop iterating
  1832. if it.fail != nil {
  1833. return false
  1834. }
  1835. // If the iterator completed, deliver directly whatever's available
  1836. if it.done {
  1837. select {
  1838. case log := <-it.logs:
  1839. it.Event = new(HermezAuctionProtocolNewForge)
  1840. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1841. it.fail = err
  1842. return false
  1843. }
  1844. it.Event.Raw = log
  1845. return true
  1846. default:
  1847. return false
  1848. }
  1849. }
  1850. // Iterator still in progress, wait for either a data or an error event
  1851. select {
  1852. case log := <-it.logs:
  1853. it.Event = new(HermezAuctionProtocolNewForge)
  1854. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1855. it.fail = err
  1856. return false
  1857. }
  1858. it.Event.Raw = log
  1859. return true
  1860. case err := <-it.sub.Err():
  1861. it.done = true
  1862. it.fail = err
  1863. return it.Next()
  1864. }
  1865. }
  1866. // Error returns any retrieval or parsing error occurred during filtering.
  1867. func (it *HermezAuctionProtocolNewForgeIterator) Error() error {
  1868. return it.fail
  1869. }
  1870. // Close terminates the iteration process, releasing any pending underlying
  1871. // resources.
  1872. func (it *HermezAuctionProtocolNewForgeIterator) Close() error {
  1873. it.sub.Unsubscribe()
  1874. return nil
  1875. }
  1876. // HermezAuctionProtocolNewForge represents a NewForge event raised by the HermezAuctionProtocol contract.
  1877. type HermezAuctionProtocolNewForge struct {
  1878. Forger common.Address
  1879. SlotToForge *big.Int
  1880. Raw types.Log // Blockchain specific contextual infos
  1881. }
  1882. // FilterNewForge is a free log retrieval operation binding the contract event 0x7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad238.
  1883. //
  1884. // Solidity: event NewForge(address indexed forger, uint128 indexed slotToForge)
  1885. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewForge(opts *bind.FilterOpts, forger []common.Address, slotToForge []*big.Int) (*HermezAuctionProtocolNewForgeIterator, error) {
  1886. var forgerRule []interface{}
  1887. for _, forgerItem := range forger {
  1888. forgerRule = append(forgerRule, forgerItem)
  1889. }
  1890. var slotToForgeRule []interface{}
  1891. for _, slotToForgeItem := range slotToForge {
  1892. slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
  1893. }
  1894. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewForge", forgerRule, slotToForgeRule)
  1895. if err != nil {
  1896. return nil, err
  1897. }
  1898. return &HermezAuctionProtocolNewForgeIterator{contract: _HermezAuctionProtocol.contract, event: "NewForge", logs: logs, sub: sub}, nil
  1899. }
  1900. // WatchNewForge is a free log subscription operation binding the contract event 0x7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad238.
  1901. //
  1902. // Solidity: event NewForge(address indexed forger, uint128 indexed slotToForge)
  1903. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewForge(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewForge, forger []common.Address, slotToForge []*big.Int) (event.Subscription, error) {
  1904. var forgerRule []interface{}
  1905. for _, forgerItem := range forger {
  1906. forgerRule = append(forgerRule, forgerItem)
  1907. }
  1908. var slotToForgeRule []interface{}
  1909. for _, slotToForgeItem := range slotToForge {
  1910. slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
  1911. }
  1912. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewForge", forgerRule, slotToForgeRule)
  1913. if err != nil {
  1914. return nil, err
  1915. }
  1916. return event.NewSubscription(func(quit <-chan struct{}) error {
  1917. defer sub.Unsubscribe()
  1918. for {
  1919. select {
  1920. case log := <-logs:
  1921. // New log arrived, parse the event and forward to the user
  1922. event := new(HermezAuctionProtocolNewForge)
  1923. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForge", log); err != nil {
  1924. return err
  1925. }
  1926. event.Raw = log
  1927. select {
  1928. case sink <- event:
  1929. case err := <-sub.Err():
  1930. return err
  1931. case <-quit:
  1932. return nil
  1933. }
  1934. case err := <-sub.Err():
  1935. return err
  1936. case <-quit:
  1937. return nil
  1938. }
  1939. }
  1940. }), nil
  1941. }
  1942. // ParseNewForge is a log parse operation binding the contract event 0x7cae662d4cfa9d9c5575c65f0cc41a858c51ca14ebcbd02a802a62376c3ad238.
  1943. //
  1944. // Solidity: event NewForge(address indexed forger, uint128 indexed slotToForge)
  1945. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewForge(log types.Log) (*HermezAuctionProtocolNewForge, error) {
  1946. event := new(HermezAuctionProtocolNewForge)
  1947. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForge", log); err != nil {
  1948. return nil, err
  1949. }
  1950. return event, nil
  1951. }
  1952. // 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.
  1953. type HermezAuctionProtocolNewForgeAllocatedIterator struct {
  1954. Event *HermezAuctionProtocolNewForgeAllocated // Event containing the contract specifics and raw log
  1955. contract *bind.BoundContract // Generic contract to use for unpacking event data
  1956. event string // Event name to use for unpacking event data
  1957. logs chan types.Log // Log channel receiving the found contract events
  1958. sub ethereum.Subscription // Subscription for errors, completion and termination
  1959. done bool // Whether the subscription completed delivering logs
  1960. fail error // Occurred error to stop iteration
  1961. }
  1962. // Next advances the iterator to the subsequent event, returning whether there
  1963. // are any more events found. In case of a retrieval or parsing error, false is
  1964. // returned and Error() can be queried for the exact failure.
  1965. func (it *HermezAuctionProtocolNewForgeAllocatedIterator) Next() bool {
  1966. // If the iterator failed, stop iterating
  1967. if it.fail != nil {
  1968. return false
  1969. }
  1970. // If the iterator completed, deliver directly whatever's available
  1971. if it.done {
  1972. select {
  1973. case log := <-it.logs:
  1974. it.Event = new(HermezAuctionProtocolNewForgeAllocated)
  1975. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1976. it.fail = err
  1977. return false
  1978. }
  1979. it.Event.Raw = log
  1980. return true
  1981. default:
  1982. return false
  1983. }
  1984. }
  1985. // Iterator still in progress, wait for either a data or an error event
  1986. select {
  1987. case log := <-it.logs:
  1988. it.Event = new(HermezAuctionProtocolNewForgeAllocated)
  1989. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1990. it.fail = err
  1991. return false
  1992. }
  1993. it.Event.Raw = log
  1994. return true
  1995. case err := <-it.sub.Err():
  1996. it.done = true
  1997. it.fail = err
  1998. return it.Next()
  1999. }
  2000. }
  2001. // Error returns any retrieval or parsing error occurred during filtering.
  2002. func (it *HermezAuctionProtocolNewForgeAllocatedIterator) Error() error {
  2003. return it.fail
  2004. }
  2005. // Close terminates the iteration process, releasing any pending underlying
  2006. // resources.
  2007. func (it *HermezAuctionProtocolNewForgeAllocatedIterator) Close() error {
  2008. it.sub.Unsubscribe()
  2009. return nil
  2010. }
  2011. // HermezAuctionProtocolNewForgeAllocated represents a NewForgeAllocated event raised by the HermezAuctionProtocol contract.
  2012. type HermezAuctionProtocolNewForgeAllocated struct {
  2013. Bidder common.Address
  2014. Forger common.Address
  2015. SlotToForge *big.Int
  2016. BurnAmount *big.Int
  2017. DonationAmount *big.Int
  2018. GovernanceAmount *big.Int
  2019. Raw types.Log // Blockchain specific contextual infos
  2020. }
  2021. // FilterNewForgeAllocated is a free log retrieval operation binding the contract event 0xd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05.
  2022. //
  2023. // Solidity: event NewForgeAllocated(address indexed bidder, address indexed forger, uint128 indexed slotToForge, uint128 burnAmount, uint128 donationAmount, uint128 governanceAmount)
  2024. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewForgeAllocated(opts *bind.FilterOpts, bidder []common.Address, forger []common.Address, slotToForge []*big.Int) (*HermezAuctionProtocolNewForgeAllocatedIterator, error) {
  2025. var bidderRule []interface{}
  2026. for _, bidderItem := range bidder {
  2027. bidderRule = append(bidderRule, bidderItem)
  2028. }
  2029. var forgerRule []interface{}
  2030. for _, forgerItem := range forger {
  2031. forgerRule = append(forgerRule, forgerItem)
  2032. }
  2033. var slotToForgeRule []interface{}
  2034. for _, slotToForgeItem := range slotToForge {
  2035. slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
  2036. }
  2037. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewForgeAllocated", bidderRule, forgerRule, slotToForgeRule)
  2038. if err != nil {
  2039. return nil, err
  2040. }
  2041. return &HermezAuctionProtocolNewForgeAllocatedIterator{contract: _HermezAuctionProtocol.contract, event: "NewForgeAllocated", logs: logs, sub: sub}, nil
  2042. }
  2043. // WatchNewForgeAllocated is a free log subscription operation binding the contract event 0xd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05.
  2044. //
  2045. // Solidity: event NewForgeAllocated(address indexed bidder, address indexed forger, uint128 indexed slotToForge, uint128 burnAmount, uint128 donationAmount, uint128 governanceAmount)
  2046. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewForgeAllocated(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewForgeAllocated, bidder []common.Address, forger []common.Address, slotToForge []*big.Int) (event.Subscription, error) {
  2047. var bidderRule []interface{}
  2048. for _, bidderItem := range bidder {
  2049. bidderRule = append(bidderRule, bidderItem)
  2050. }
  2051. var forgerRule []interface{}
  2052. for _, forgerItem := range forger {
  2053. forgerRule = append(forgerRule, forgerItem)
  2054. }
  2055. var slotToForgeRule []interface{}
  2056. for _, slotToForgeItem := range slotToForge {
  2057. slotToForgeRule = append(slotToForgeRule, slotToForgeItem)
  2058. }
  2059. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewForgeAllocated", bidderRule, forgerRule, slotToForgeRule)
  2060. if err != nil {
  2061. return nil, err
  2062. }
  2063. return event.NewSubscription(func(quit <-chan struct{}) error {
  2064. defer sub.Unsubscribe()
  2065. for {
  2066. select {
  2067. case log := <-logs:
  2068. // New log arrived, parse the event and forward to the user
  2069. event := new(HermezAuctionProtocolNewForgeAllocated)
  2070. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForgeAllocated", log); err != nil {
  2071. return err
  2072. }
  2073. event.Raw = log
  2074. select {
  2075. case sink <- event:
  2076. case err := <-sub.Err():
  2077. return err
  2078. case <-quit:
  2079. return nil
  2080. }
  2081. case err := <-sub.Err():
  2082. return err
  2083. case <-quit:
  2084. return nil
  2085. }
  2086. }
  2087. }), nil
  2088. }
  2089. // ParseNewForgeAllocated is a log parse operation binding the contract event 0xd64ebb43f4c2b91022b97389834432f1027ef55586129ba05a3a3065b2304f05.
  2090. //
  2091. // Solidity: event NewForgeAllocated(address indexed bidder, address indexed forger, uint128 indexed slotToForge, uint128 burnAmount, uint128 donationAmount, uint128 governanceAmount)
  2092. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewForgeAllocated(log types.Log) (*HermezAuctionProtocolNewForgeAllocated, error) {
  2093. event := new(HermezAuctionProtocolNewForgeAllocated)
  2094. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewForgeAllocated", log); err != nil {
  2095. return nil, err
  2096. }
  2097. return event, nil
  2098. }
  2099. // 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.
  2100. type HermezAuctionProtocolNewOpenAuctionSlotsIterator struct {
  2101. Event *HermezAuctionProtocolNewOpenAuctionSlots // Event containing the contract specifics and raw log
  2102. contract *bind.BoundContract // Generic contract to use for unpacking event data
  2103. event string // Event name to use for unpacking event data
  2104. logs chan types.Log // Log channel receiving the found contract events
  2105. sub ethereum.Subscription // Subscription for errors, completion and termination
  2106. done bool // Whether the subscription completed delivering logs
  2107. fail error // Occurred error to stop iteration
  2108. }
  2109. // Next advances the iterator to the subsequent event, returning whether there
  2110. // are any more events found. In case of a retrieval or parsing error, false is
  2111. // returned and Error() can be queried for the exact failure.
  2112. func (it *HermezAuctionProtocolNewOpenAuctionSlotsIterator) Next() bool {
  2113. // If the iterator failed, stop iterating
  2114. if it.fail != nil {
  2115. return false
  2116. }
  2117. // If the iterator completed, deliver directly whatever's available
  2118. if it.done {
  2119. select {
  2120. case log := <-it.logs:
  2121. it.Event = new(HermezAuctionProtocolNewOpenAuctionSlots)
  2122. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2123. it.fail = err
  2124. return false
  2125. }
  2126. it.Event.Raw = log
  2127. return true
  2128. default:
  2129. return false
  2130. }
  2131. }
  2132. // Iterator still in progress, wait for either a data or an error event
  2133. select {
  2134. case log := <-it.logs:
  2135. it.Event = new(HermezAuctionProtocolNewOpenAuctionSlots)
  2136. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2137. it.fail = err
  2138. return false
  2139. }
  2140. it.Event.Raw = log
  2141. return true
  2142. case err := <-it.sub.Err():
  2143. it.done = true
  2144. it.fail = err
  2145. return it.Next()
  2146. }
  2147. }
  2148. // Error returns any retrieval or parsing error occurred during filtering.
  2149. func (it *HermezAuctionProtocolNewOpenAuctionSlotsIterator) Error() error {
  2150. return it.fail
  2151. }
  2152. // Close terminates the iteration process, releasing any pending underlying
  2153. // resources.
  2154. func (it *HermezAuctionProtocolNewOpenAuctionSlotsIterator) Close() error {
  2155. it.sub.Unsubscribe()
  2156. return nil
  2157. }
  2158. // HermezAuctionProtocolNewOpenAuctionSlots represents a NewOpenAuctionSlots event raised by the HermezAuctionProtocol contract.
  2159. type HermezAuctionProtocolNewOpenAuctionSlots struct {
  2160. NewOpenAuctionSlots uint16
  2161. Raw types.Log // Blockchain specific contextual infos
  2162. }
  2163. // FilterNewOpenAuctionSlots is a free log retrieval operation binding the contract event 0x3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f1.
  2164. //
  2165. // Solidity: event NewOpenAuctionSlots(uint16 newOpenAuctionSlots)
  2166. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewOpenAuctionSlots(opts *bind.FilterOpts) (*HermezAuctionProtocolNewOpenAuctionSlotsIterator, error) {
  2167. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewOpenAuctionSlots")
  2168. if err != nil {
  2169. return nil, err
  2170. }
  2171. return &HermezAuctionProtocolNewOpenAuctionSlotsIterator{contract: _HermezAuctionProtocol.contract, event: "NewOpenAuctionSlots", logs: logs, sub: sub}, nil
  2172. }
  2173. // WatchNewOpenAuctionSlots is a free log subscription operation binding the contract event 0x3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f1.
  2174. //
  2175. // Solidity: event NewOpenAuctionSlots(uint16 newOpenAuctionSlots)
  2176. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewOpenAuctionSlots(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewOpenAuctionSlots) (event.Subscription, error) {
  2177. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewOpenAuctionSlots")
  2178. if err != nil {
  2179. return nil, err
  2180. }
  2181. return event.NewSubscription(func(quit <-chan struct{}) error {
  2182. defer sub.Unsubscribe()
  2183. for {
  2184. select {
  2185. case log := <-logs:
  2186. // New log arrived, parse the event and forward to the user
  2187. event := new(HermezAuctionProtocolNewOpenAuctionSlots)
  2188. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOpenAuctionSlots", log); err != nil {
  2189. return err
  2190. }
  2191. event.Raw = log
  2192. select {
  2193. case sink <- event:
  2194. case err := <-sub.Err():
  2195. return err
  2196. case <-quit:
  2197. return nil
  2198. }
  2199. case err := <-sub.Err():
  2200. return err
  2201. case <-quit:
  2202. return nil
  2203. }
  2204. }
  2205. }), nil
  2206. }
  2207. // ParseNewOpenAuctionSlots is a log parse operation binding the contract event 0x3da0492dea7298351bc14d1c0699905fd0657c33487449751af50fc0c8b593f1.
  2208. //
  2209. // Solidity: event NewOpenAuctionSlots(uint16 newOpenAuctionSlots)
  2210. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewOpenAuctionSlots(log types.Log) (*HermezAuctionProtocolNewOpenAuctionSlots, error) {
  2211. event := new(HermezAuctionProtocolNewOpenAuctionSlots)
  2212. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOpenAuctionSlots", log); err != nil {
  2213. return nil, err
  2214. }
  2215. return event, nil
  2216. }
  2217. // 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.
  2218. type HermezAuctionProtocolNewOutbiddingIterator struct {
  2219. Event *HermezAuctionProtocolNewOutbidding // Event containing the contract specifics and raw log
  2220. contract *bind.BoundContract // Generic contract to use for unpacking event data
  2221. event string // Event name to use for unpacking event data
  2222. logs chan types.Log // Log channel receiving the found contract events
  2223. sub ethereum.Subscription // Subscription for errors, completion and termination
  2224. done bool // Whether the subscription completed delivering logs
  2225. fail error // Occurred error to stop iteration
  2226. }
  2227. // Next advances the iterator to the subsequent event, returning whether there
  2228. // are any more events found. In case of a retrieval or parsing error, false is
  2229. // returned and Error() can be queried for the exact failure.
  2230. func (it *HermezAuctionProtocolNewOutbiddingIterator) Next() bool {
  2231. // If the iterator failed, stop iterating
  2232. if it.fail != nil {
  2233. return false
  2234. }
  2235. // If the iterator completed, deliver directly whatever's available
  2236. if it.done {
  2237. select {
  2238. case log := <-it.logs:
  2239. it.Event = new(HermezAuctionProtocolNewOutbidding)
  2240. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2241. it.fail = err
  2242. return false
  2243. }
  2244. it.Event.Raw = log
  2245. return true
  2246. default:
  2247. return false
  2248. }
  2249. }
  2250. // Iterator still in progress, wait for either a data or an error event
  2251. select {
  2252. case log := <-it.logs:
  2253. it.Event = new(HermezAuctionProtocolNewOutbidding)
  2254. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2255. it.fail = err
  2256. return false
  2257. }
  2258. it.Event.Raw = log
  2259. return true
  2260. case err := <-it.sub.Err():
  2261. it.done = true
  2262. it.fail = err
  2263. return it.Next()
  2264. }
  2265. }
  2266. // Error returns any retrieval or parsing error occurred during filtering.
  2267. func (it *HermezAuctionProtocolNewOutbiddingIterator) Error() error {
  2268. return it.fail
  2269. }
  2270. // Close terminates the iteration process, releasing any pending underlying
  2271. // resources.
  2272. func (it *HermezAuctionProtocolNewOutbiddingIterator) Close() error {
  2273. it.sub.Unsubscribe()
  2274. return nil
  2275. }
  2276. // HermezAuctionProtocolNewOutbidding represents a NewOutbidding event raised by the HermezAuctionProtocol contract.
  2277. type HermezAuctionProtocolNewOutbidding struct {
  2278. NewOutbidding uint16
  2279. Raw types.Log // Blockchain specific contextual infos
  2280. }
  2281. // FilterNewOutbidding is a free log retrieval operation binding the contract event 0xd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e.
  2282. //
  2283. // Solidity: event NewOutbidding(uint16 newOutbidding)
  2284. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewOutbidding(opts *bind.FilterOpts) (*HermezAuctionProtocolNewOutbiddingIterator, error) {
  2285. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewOutbidding")
  2286. if err != nil {
  2287. return nil, err
  2288. }
  2289. return &HermezAuctionProtocolNewOutbiddingIterator{contract: _HermezAuctionProtocol.contract, event: "NewOutbidding", logs: logs, sub: sub}, nil
  2290. }
  2291. // WatchNewOutbidding is a free log subscription operation binding the contract event 0xd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e.
  2292. //
  2293. // Solidity: event NewOutbidding(uint16 newOutbidding)
  2294. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewOutbidding(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewOutbidding) (event.Subscription, error) {
  2295. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewOutbidding")
  2296. if err != nil {
  2297. return nil, err
  2298. }
  2299. return event.NewSubscription(func(quit <-chan struct{}) error {
  2300. defer sub.Unsubscribe()
  2301. for {
  2302. select {
  2303. case log := <-logs:
  2304. // New log arrived, parse the event and forward to the user
  2305. event := new(HermezAuctionProtocolNewOutbidding)
  2306. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOutbidding", log); err != nil {
  2307. return err
  2308. }
  2309. event.Raw = log
  2310. select {
  2311. case sink <- event:
  2312. case err := <-sub.Err():
  2313. return err
  2314. case <-quit:
  2315. return nil
  2316. }
  2317. case err := <-sub.Err():
  2318. return err
  2319. case <-quit:
  2320. return nil
  2321. }
  2322. }
  2323. }), nil
  2324. }
  2325. // ParseNewOutbidding is a log parse operation binding the contract event 0xd3748b8c326e93d12af934fbf87471e315a89bc3f7b8222343acf0210edf248e.
  2326. //
  2327. // Solidity: event NewOutbidding(uint16 newOutbidding)
  2328. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewOutbidding(log types.Log) (*HermezAuctionProtocolNewOutbidding, error) {
  2329. event := new(HermezAuctionProtocolNewOutbidding)
  2330. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewOutbidding", log); err != nil {
  2331. return nil, err
  2332. }
  2333. return event, nil
  2334. }
  2335. // 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.
  2336. type HermezAuctionProtocolNewSlotDeadlineIterator struct {
  2337. Event *HermezAuctionProtocolNewSlotDeadline // Event containing the contract specifics and raw log
  2338. contract *bind.BoundContract // Generic contract to use for unpacking event data
  2339. event string // Event name to use for unpacking event data
  2340. logs chan types.Log // Log channel receiving the found contract events
  2341. sub ethereum.Subscription // Subscription for errors, completion and termination
  2342. done bool // Whether the subscription completed delivering logs
  2343. fail error // Occurred error to stop iteration
  2344. }
  2345. // Next advances the iterator to the subsequent event, returning whether there
  2346. // are any more events found. In case of a retrieval or parsing error, false is
  2347. // returned and Error() can be queried for the exact failure.
  2348. func (it *HermezAuctionProtocolNewSlotDeadlineIterator) Next() bool {
  2349. // If the iterator failed, stop iterating
  2350. if it.fail != nil {
  2351. return false
  2352. }
  2353. // If the iterator completed, deliver directly whatever's available
  2354. if it.done {
  2355. select {
  2356. case log := <-it.logs:
  2357. it.Event = new(HermezAuctionProtocolNewSlotDeadline)
  2358. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2359. it.fail = err
  2360. return false
  2361. }
  2362. it.Event.Raw = log
  2363. return true
  2364. default:
  2365. return false
  2366. }
  2367. }
  2368. // Iterator still in progress, wait for either a data or an error event
  2369. select {
  2370. case log := <-it.logs:
  2371. it.Event = new(HermezAuctionProtocolNewSlotDeadline)
  2372. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2373. it.fail = err
  2374. return false
  2375. }
  2376. it.Event.Raw = log
  2377. return true
  2378. case err := <-it.sub.Err():
  2379. it.done = true
  2380. it.fail = err
  2381. return it.Next()
  2382. }
  2383. }
  2384. // Error returns any retrieval or parsing error occurred during filtering.
  2385. func (it *HermezAuctionProtocolNewSlotDeadlineIterator) Error() error {
  2386. return it.fail
  2387. }
  2388. // Close terminates the iteration process, releasing any pending underlying
  2389. // resources.
  2390. func (it *HermezAuctionProtocolNewSlotDeadlineIterator) Close() error {
  2391. it.sub.Unsubscribe()
  2392. return nil
  2393. }
  2394. // HermezAuctionProtocolNewSlotDeadline represents a NewSlotDeadline event raised by the HermezAuctionProtocol contract.
  2395. type HermezAuctionProtocolNewSlotDeadline struct {
  2396. NewSlotDeadline uint8
  2397. Raw types.Log // Blockchain specific contextual infos
  2398. }
  2399. // FilterNewSlotDeadline is a free log retrieval operation binding the contract event 0x4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d3.
  2400. //
  2401. // Solidity: event NewSlotDeadline(uint8 newSlotDeadline)
  2402. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterNewSlotDeadline(opts *bind.FilterOpts) (*HermezAuctionProtocolNewSlotDeadlineIterator, error) {
  2403. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "NewSlotDeadline")
  2404. if err != nil {
  2405. return nil, err
  2406. }
  2407. return &HermezAuctionProtocolNewSlotDeadlineIterator{contract: _HermezAuctionProtocol.contract, event: "NewSlotDeadline", logs: logs, sub: sub}, nil
  2408. }
  2409. // WatchNewSlotDeadline is a free log subscription operation binding the contract event 0x4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d3.
  2410. //
  2411. // Solidity: event NewSlotDeadline(uint8 newSlotDeadline)
  2412. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchNewSlotDeadline(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolNewSlotDeadline) (event.Subscription, error) {
  2413. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "NewSlotDeadline")
  2414. if err != nil {
  2415. return nil, err
  2416. }
  2417. return event.NewSubscription(func(quit <-chan struct{}) error {
  2418. defer sub.Unsubscribe()
  2419. for {
  2420. select {
  2421. case log := <-logs:
  2422. // New log arrived, parse the event and forward to the user
  2423. event := new(HermezAuctionProtocolNewSlotDeadline)
  2424. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewSlotDeadline", log); err != nil {
  2425. return err
  2426. }
  2427. event.Raw = log
  2428. select {
  2429. case sink <- event:
  2430. case err := <-sub.Err():
  2431. return err
  2432. case <-quit:
  2433. return nil
  2434. }
  2435. case err := <-sub.Err():
  2436. return err
  2437. case <-quit:
  2438. return nil
  2439. }
  2440. }
  2441. }), nil
  2442. }
  2443. // ParseNewSlotDeadline is a log parse operation binding the contract event 0x4a0d90b611c15e02dbf23b10f35b936cf2c77665f8c77822d3eca131f9d986d3.
  2444. //
  2445. // Solidity: event NewSlotDeadline(uint8 newSlotDeadline)
  2446. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseNewSlotDeadline(log types.Log) (*HermezAuctionProtocolNewSlotDeadline, error) {
  2447. event := new(HermezAuctionProtocolNewSlotDeadline)
  2448. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "NewSlotDeadline", log); err != nil {
  2449. return nil, err
  2450. }
  2451. return event, nil
  2452. }
  2453. // 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.
  2454. type HermezAuctionProtocolSetCoordinatorIterator struct {
  2455. Event *HermezAuctionProtocolSetCoordinator // Event containing the contract specifics and raw log
  2456. contract *bind.BoundContract // Generic contract to use for unpacking event data
  2457. event string // Event name to use for unpacking event data
  2458. logs chan types.Log // Log channel receiving the found contract events
  2459. sub ethereum.Subscription // Subscription for errors, completion and termination
  2460. done bool // Whether the subscription completed delivering logs
  2461. fail error // Occurred error to stop iteration
  2462. }
  2463. // Next advances the iterator to the subsequent event, returning whether there
  2464. // are any more events found. In case of a retrieval or parsing error, false is
  2465. // returned and Error() can be queried for the exact failure.
  2466. func (it *HermezAuctionProtocolSetCoordinatorIterator) Next() bool {
  2467. // If the iterator failed, stop iterating
  2468. if it.fail != nil {
  2469. return false
  2470. }
  2471. // If the iterator completed, deliver directly whatever's available
  2472. if it.done {
  2473. select {
  2474. case log := <-it.logs:
  2475. it.Event = new(HermezAuctionProtocolSetCoordinator)
  2476. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2477. it.fail = err
  2478. return false
  2479. }
  2480. it.Event.Raw = log
  2481. return true
  2482. default:
  2483. return false
  2484. }
  2485. }
  2486. // Iterator still in progress, wait for either a data or an error event
  2487. select {
  2488. case log := <-it.logs:
  2489. it.Event = new(HermezAuctionProtocolSetCoordinator)
  2490. if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  2491. it.fail = err
  2492. return false
  2493. }
  2494. it.Event.Raw = log
  2495. return true
  2496. case err := <-it.sub.Err():
  2497. it.done = true
  2498. it.fail = err
  2499. return it.Next()
  2500. }
  2501. }
  2502. // Error returns any retrieval or parsing error occurred during filtering.
  2503. func (it *HermezAuctionProtocolSetCoordinatorIterator) Error() error {
  2504. return it.fail
  2505. }
  2506. // Close terminates the iteration process, releasing any pending underlying
  2507. // resources.
  2508. func (it *HermezAuctionProtocolSetCoordinatorIterator) Close() error {
  2509. it.sub.Unsubscribe()
  2510. return nil
  2511. }
  2512. // HermezAuctionProtocolSetCoordinator represents a SetCoordinator event raised by the HermezAuctionProtocol contract.
  2513. type HermezAuctionProtocolSetCoordinator struct {
  2514. Bidder common.Address
  2515. Forger common.Address
  2516. CoordinatorURL string
  2517. Raw types.Log // Blockchain specific contextual infos
  2518. }
  2519. // FilterSetCoordinator is a free log retrieval operation binding the contract event 0x5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0.
  2520. //
  2521. // Solidity: event SetCoordinator(address indexed bidder, address indexed forger, string coordinatorURL)
  2522. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) FilterSetCoordinator(opts *bind.FilterOpts, bidder []common.Address, forger []common.Address) (*HermezAuctionProtocolSetCoordinatorIterator, error) {
  2523. var bidderRule []interface{}
  2524. for _, bidderItem := range bidder {
  2525. bidderRule = append(bidderRule, bidderItem)
  2526. }
  2527. var forgerRule []interface{}
  2528. for _, forgerItem := range forger {
  2529. forgerRule = append(forgerRule, forgerItem)
  2530. }
  2531. logs, sub, err := _HermezAuctionProtocol.contract.FilterLogs(opts, "SetCoordinator", bidderRule, forgerRule)
  2532. if err != nil {
  2533. return nil, err
  2534. }
  2535. return &HermezAuctionProtocolSetCoordinatorIterator{contract: _HermezAuctionProtocol.contract, event: "SetCoordinator", logs: logs, sub: sub}, nil
  2536. }
  2537. // WatchSetCoordinator is a free log subscription operation binding the contract event 0x5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0.
  2538. //
  2539. // Solidity: event SetCoordinator(address indexed bidder, address indexed forger, string coordinatorURL)
  2540. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) WatchSetCoordinator(opts *bind.WatchOpts, sink chan<- *HermezAuctionProtocolSetCoordinator, bidder []common.Address, forger []common.Address) (event.Subscription, error) {
  2541. var bidderRule []interface{}
  2542. for _, bidderItem := range bidder {
  2543. bidderRule = append(bidderRule, bidderItem)
  2544. }
  2545. var forgerRule []interface{}
  2546. for _, forgerItem := range forger {
  2547. forgerRule = append(forgerRule, forgerItem)
  2548. }
  2549. logs, sub, err := _HermezAuctionProtocol.contract.WatchLogs(opts, "SetCoordinator", bidderRule, forgerRule)
  2550. if err != nil {
  2551. return nil, err
  2552. }
  2553. return event.NewSubscription(func(quit <-chan struct{}) error {
  2554. defer sub.Unsubscribe()
  2555. for {
  2556. select {
  2557. case log := <-logs:
  2558. // New log arrived, parse the event and forward to the user
  2559. event := new(HermezAuctionProtocolSetCoordinator)
  2560. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "SetCoordinator", log); err != nil {
  2561. return err
  2562. }
  2563. event.Raw = log
  2564. select {
  2565. case sink <- event:
  2566. case err := <-sub.Err():
  2567. return err
  2568. case <-quit:
  2569. return nil
  2570. }
  2571. case err := <-sub.Err():
  2572. return err
  2573. case <-quit:
  2574. return nil
  2575. }
  2576. }
  2577. }), nil
  2578. }
  2579. // ParseSetCoordinator is a log parse operation binding the contract event 0x5246b2ac9ee77efe2e64af6df00055d97e2d6e1b277f5a8d17ba5bca1a573da0.
  2580. //
  2581. // Solidity: event SetCoordinator(address indexed bidder, address indexed forger, string coordinatorURL)
  2582. func (_HermezAuctionProtocol *HermezAuctionProtocolFilterer) ParseSetCoordinator(log types.Log) (*HermezAuctionProtocolSetCoordinator, error) {
  2583. event := new(HermezAuctionProtocolSetCoordinator)
  2584. if err := _HermezAuctionProtocol.contract.UnpackLog(event, "SetCoordinator", log); err != nil {
  2585. return nil, err
  2586. }
  2587. return event, nil
  2588. }