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

2937 lines
167 KiB

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