hermez-node/eth/contracts/withdrawdelayer/WithdrawalDelayer.go
eth/contracts/withdrawdelayer/WithdrawalDelayer.goRaw
1// Code generated - DO NOT EDIT.
2// This file is a generated binding and any manual changes will be lost.
3
4package WithdrawalDelayer
5
6import (
7 "math/big"
8 "strings"
9
10 ethereum "github.com/ethereum/go-ethereum"
11 "github.com/ethereum/go-ethereum/accounts/abi"
12 "github.com/ethereum/go-ethereum/accounts/abi/bind"
13 "github.com/ethereum/go-ethereum/common"
14 "github.com/ethereum/go-ethereum/core/types"
15 "github.com/ethereum/go-ethereum/event"
16)
17
18// Reference imports to suppress errors if they are not otherwise used.
19var (
20 _ = big.NewInt
21 _ = strings.NewReader
22 _ = ethereum.NotFound
23 _ = bind.Bind
24 _ = common.Big1
25 _ = types.BloomLookup
26 _ = event.NewSubscription
27)
28
29// WithdrawalDelayerABI is the input ABI used to generate the binding from.
30const WithdrawalDelayerABI = "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint192\",\"name\":\"amount\",\"type\":\"uint192\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"depositTimestamp\",\"type\":\"uint64\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EmergencyModeEnabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"who\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"EscapeHatchWithdrawal\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newHermezGovernanceDAOAddress\",\"type\":\"address\"}],\"name\":\"NewHermezGovernanceDAOAddress\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newHermezKeeperAddress\",\"type\":\"address\"}],\"name\":\"NewHermezKeeperAddress\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newWhiteHackGroupAddress\",\"type\":\"address\"}],\"name\":\"NewWhiteHackGroupAddress\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"withdrawalDelay\",\"type\":\"uint64\"}],\"name\":\"NewWithdrawalDelay\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint192\",\"name\":\"amount\",\"type\":\"uint192\"}],\"name\":\"Withdraw\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"MAX_EMERGENCY_MODE_TIME\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_WITHDRAWAL_DELAY\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_newWithdrawalDelay\",\"type\":\"uint64\"}],\"name\":\"changeWithdrawalDelay\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint192\",\"name\":\"_amount\",\"type\":\"uint192\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"depositInfo\",\"outputs\":[{\"internalType\":\"uint192\",\"name\":\"\",\"type\":\"uint192\"},{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"deposits\",\"outputs\":[{\"internalType\":\"uint192\",\"name\":\"amount\",\"type\":\"uint192\"},{\"internalType\":\"uint64\",\"name\":\"depositTimestamp\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableEmergencyMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"escapeHatchWithdrawal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getEmergencyModeStartingTime\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getHermezGovernanceDAOAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getHermezKeeperAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getWhiteHackGroupAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getWithdrawalDelay\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hermezRollupAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_initialWithdrawalDelay\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"_initialHermezRollup\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_initialHermezKeeperAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_initialHermezGovernanceDAOAddress\",\"type\":\"address\"},{\"internalType\":\"addresspayable\",\"name\":\"_initialWhiteHackGroupAddress\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isEmergencyMode\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAddress\",\"type\":\"address\"}],\"name\":\"setHermezGovernanceDAOAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAddress\",\"type\":\"address\"}],\"name\":\"setHermezKeeperAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"newAddress\",\"type\":\"address\"}],\"name\":\"setWhiteHackGroupAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"withdrawal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]"
31
32// WithdrawalDelayerBin is the compiled bytecode used for deploying new contracts.
33var WithdrawalDelayerBin = "0x60806040526037805460ff60a01b1916905534801561001d57600080fd5b506001600055611776806100326000396000f3fe60806040526004361061011f5760003560e01c8063668cdd67116100a0578063c5b1c7d011610064578063c5b1c7d0146103d7578063cf3a25d9146103ec578063cfc0b64114610427578063d82b217c14610467578063de35f2821461049a5761011f565b8063668cdd6714610334578063a238f9df14610349578063acfd6ea81461037a578063ae7efbbd146103ad578063b4b8e39d146103c25761011f565b806320a194b8116100e757806320a194b814610251578063305887f91461027a5780633d4dff7b1461028f578063493b0170146102e4578063580fc6111461031f5761011f565b806303160940146101245780630a4db01b1461015e5780630e670af5146101935780630fd266d7146101c657806316b487ff146101f7575b600080fd5b34801561013057600080fd5b506101396104d5565b604080516fffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561016a57600080fd5b506101916004803603602081101561018157600080fd5b50356001600160a01b03166104e4565b005b34801561019f57600080fd5b50610191600480360360208110156101b657600080fd5b50356001600160401b0316610590565b3480156101d257600080fd5b506101db6106c0565b604080516001600160a01b039092168252519081900360200190f35b34801561020357600080fd5b50610191600480360360a081101561021a57600080fd5b506001600160401b03813516906001600160a01b0360208201358116916040810135821691606082013581169160800135166106cf565b34801561025d57600080fd5b506102666107db565b604080519115158252519081900360200190f35b34801561028657600080fd5b506101db6107eb565b34801561029b57600080fd5b506102b9600480360360208110156102b257600080fd5b50356107fa565b604080516001600160c01b0390931683526001600160401b0390911660208301528051918290030190f35b3480156102f057600080fd5b506102b96004803603604081101561030757600080fd5b506001600160a01b0381358116916020013516610827565b34801561032b57600080fd5b506101db6108b8565b34801561034057600080fd5b506101396108c7565b34801561035557600080fd5b5061035e6108dd565b604080516001600160401b039092168252519081900360200190f35b34801561038657600080fd5b506101916004803603602081101561039d57600080fd5b50356001600160a01b03166108e4565b3480156103b957600080fd5b506101db61099d565b3480156103ce57600080fd5b5061035e6109ac565b3480156103e357600080fd5b506101916109b4565b3480156103f857600080fd5b506101916004803603604081101561040f57600080fd5b506001600160a01b0381358116916020013516610adc565b6101916004803603606081101561043d57600080fd5b5080356001600160a01b0390811691602081013590911690604001356001600160c01b0316610d72565b34801561047357600080fd5b506101916004803603602081101561048a57600080fd5b50356001600160a01b0316611191565b3480156104a657600080fd5b50610191600480360360408110156104bd57600080fd5b506001600160a01b038135811691602001351661124a565b6034546001600160401b031690565b6036546001600160a01b03163314610536576040805162461bcd60e51b815260206004820152601060248201526f4f6e6c7920574847206164647265737360801b604482015290519081900360640190fd5b603680546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517f284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011916020908290030190a150565b6037546001600160a01b03163314806105b357506038546001600160a01b031633145b610604576040805162461bcd60e51b815260206004820152601c60248201527f4f6e6c79206865726d657a206b6565706572206f7220726f6c6c757000000000604482015290519081900360640190fd5b621275006001600160401b0382161115610665576040805162461bcd60e51b815260206004820152601c60248201527f45786365656473204d41585f5749544844524157414c5f44454c415900000000604482015290519081900360640190fd5b6034805467ffffffffffffffff19166001600160401b03838116919091179182905560408051929091168252517f6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7916020908290030190a150565b6038546001600160a01b031681565b600154610100900460ff16806106e857506106e86114c2565b806106f6575060015460ff16155b6107315760405162461bcd60e51b815260040180806020018281038252602e815260200180611713602e913960400191505060405180910390fd5b600154610100900460ff1615801561075b576001805460ff1961ff00199091166101001716811790555b6034805467ffffffffffffffff19166001600160401b038816179055603880546001600160a01b03199081166001600160a01b03888116919091179092556037805482168784161790556035805482168684161790556036805490911691841691909117905580156107d3576001805461ff00191690555b505050505050565b603754600160a01b900460ff1690565b6037546001600160a01b031690565b6039602052600090815260409020546001600160c01b03811690600160c01b90046001600160401b031682565b6000806108326116fb565b505060408051606094851b6001600160601b03199081166020808401919091529490951b90941660348501528051808503602801815260488501808352815191850191909120600090815260399094529281902060888501909152546001600160c01b03811692839052600160c01b90046001600160401b031660689093018390525091565b6035546001600160a01b031690565b603454600160401b90046001600160401b031690565b6212750081565b6035546001600160a01b03163314610943576040805162461bcd60e51b815260206004820152601a60248201527f4f6e6c79204865726d657a20476f7665726e616e63652044414f000000000000604482015290519081900360640190fd5b603580546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517f03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1916020908290030190a150565b6036546001600160a01b031690565b6301dfe20081565b6037546001600160a01b03163314610a13576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c79206865726d657a4b6565706572416464726573730000000000000000604482015290519081900360640190fd5b603754600160a01b900460ff1615610a72576040805162461bcd60e51b815260206004820152601e60248201527f456d657267656e6379206d6f646520616c726561647920656e61626c65640000604482015290519081900360640190fd5b6037805460ff60a01b1916600160a01b179055603480546001600160401b034216600160401b026fffffffffffffffff0000000000000000199091161790556040517f2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c590600090a1565b60026000541415610b34576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002600055603754600160a01b900460ff16610b8d576040805162461bcd60e51b81526020600482015260136024820152724f6e6c7920456d657267656e6379204d6f646560681b604482015290519081900360640190fd5b6036546001600160a01b0316331480610bb057506035546001600160a01b031633145b610c01576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e616e636544414f206f722057484700000000000000604482015290519081900360640190fd5b6036546001600160a01b0316331415610c88576034546001600160401b03600160401b90910481166301dfe200018116429091161015610c88576040805162461bcd60e51b815260206004820152601a60248201527f4e4f204d41585f454d455247454e43595f4d4f44455f54494d45000000000000604482015290519081900360640190fd5b60006001600160a01b038216610ca9575047610ca483826114c8565b610d2d565b604080516370a0823160e01b8152306004820152905183916001600160a01b038316916370a0823191602480820192602092909190829003018186803b158015610cf257600080fd5b505afa158015610d06573d6000803e3d6000fd5b505050506040513d6020811015610d1c57600080fd5b50519150610d2b838584611569565b505b6040516001600160a01b03808416919085169033907f065a030f4e05509e10831215a77cf703ff0d78a252b9fa008749d832eb1f61d990600090a45050600160005550565b6038546001600160a01b03163314610dd1576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c79206865726d657a526f6c6c7570416464726573730000000000000000604482015290519081900360640190fd5b3415610e95576001600160a01b03821615610e33576040805162461bcd60e51b815260206004820152601d60248201527f4554482073686f756c6420626520746865203078302061646472657373000000604482015290519081900360640190fd5b34816001600160c01b031614610e90576040805162461bcd60e51b815260206004820152601e60248201527f446966666572656e7420616d6f756e7420616e64206d73672e76616c75650000604482015290519081900360640190fd5b611049565b60385460408051636eb1769f60e11b81526001600160a01b03928316600482015230602482015290516001600160c01b0384169285169163dd62ed3e916044808301926020929190829003018186803b158015610ef157600080fd5b505afa158015610f05573d6000803e3d6000fd5b505050506040513d6020811015610f1b57600080fd5b50511015610f70576040805162461bcd60e51b815260206004820152601d60248201527f446f65736e2774206861766520656e6f75676820616c6c6f77616e6365000000604482015290519081900360640190fd5b603854604080516323b872dd60e01b81526001600160a01b0392831660048201523060248201526001600160c01b03841660448201529051918416916323b872dd916064808201926020929091908290030181600087803b158015610fd457600080fd5b505af1158015610fe8573d6000803e3d6000fd5b505050506040513d6020811015610ffe57600080fd5b5051611049576040805162461bcd60e51b8152602060048201526015602482015274151bdad95b88151c985b9cd9995c8811985a5b1959605a1b604482015290519081900360640190fd5b60408051606085811b6001600160601b03199081166020808501919091529186901b166034830152825180830360280181526048909201835281519181019190912060008181526039909252919020546001600160c01b0390811683810191821610156110f0576040805162461bcd60e51b815260206004820152601060248201526f4465706f736974206f766572666c6f7760801b604482015290519081900360640190fd5b60008281526039602090815260409182902080546001600160401b03428116600160c01b9081026001600160c01b038089166001600160c01b03199095169490941784161793849055855192891683529092049091169181019190915281516001600160a01b0380881693908916927f41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd929081900390910190a35050505050565b6037546001600160a01b031633146111f0576040805162461bcd60e51b815260206004820152601a60248201527f4f6e6c79204865726d657a204b65657065722041646472657373000000000000604482015290519081900360640190fd5b603780546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517fc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016916020908290030190a150565b600260005414156112a2576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002600055603754600160a01b900460ff16156112f7576040805162461bcd60e51b815260206004820152600e60248201526d456d657267656e6379206d6f646560901b604482015290519081900360640190fd5b60408051606084811b6001600160601b03199081166020808501919091529185901b166034830152825180830360280181526048909201835281519181019190912060008181526039909252919020546001600160c01b031680611399576040805162461bcd60e51b81526020600482015260146024820152734e6f2066756e647320746f20776974686472617760601b604482015290519081900360640190fd5b6034546000838152603960205260409020546001600160401b03918216600160c01b909104821601811642909116101561141a576040805162461bcd60e51b815260206004820152601a60248201527f5769746864726177616c206e6f7420616c6c6f77656420796574000000000000604482015290519081900360640190fd5b6000828152603960205260408120556001600160a01b03831661144f5761144a84826001600160c01b03166114c8565b611463565b6114638385836001600160c01b0316611569565b836001600160a01b0316836001600160a01b03167f72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf32718360405180826001600160c01b0316815260200191505060405180910390a3505060016000555050565b303b1590565b6040516000906001600160a01b0384169083908381818185875af1925050503d8060008114611513576040519150601f19603f3d011682016040523d82523d6000602084013e611518565b606091505b5050905080611564576040805162461bcd60e51b8152602060048201526013602482015272115512081d1c985b9cd9995c8819985a5b1959606a1b604482015290519081900360640190fd5b505050565b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b602083106116165780518252601f1990920191602091820191016115f7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611678576040519150601f19603f3d011682016040523d82523d6000602084013e61167d565b606091505b50915091508180156116ab5750805115806116ab57508080602001905160208110156116a857600080fd5b50515b6116f4576040805162461bcd60e51b8152602060048201526015602482015274151bdad95b88151c985b9cd9995c8811985a5b1959605a1b604482015290519081900360640190fd5b5050505050565b60408051808201909152600080825260208201529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220c1c762163fd298f0328559fb5d7027caf2d51af3b3691a9b8808a2b55947492d64736f6c634300060c0033"
34
35// DeployWithdrawalDelayer deploys a new Ethereum contract, binding an instance of WithdrawalDelayer to it.
36func DeployWithdrawalDelayer(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *WithdrawalDelayer, error) {
37 parsed, err := abi.JSON(strings.NewReader(WithdrawalDelayerABI))
38 if err != nil {
39 return common.Address{}, nil, nil, err
40 }
41
42 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(WithdrawalDelayerBin), backend)
43 if err != nil {
44 return common.Address{}, nil, nil, err
45 }
46 return address, tx, &WithdrawalDelayer{WithdrawalDelayerCaller: WithdrawalDelayerCaller{contract: contract}, WithdrawalDelayerTransactor: WithdrawalDelayerTransactor{contract: contract}, WithdrawalDelayerFilterer: WithdrawalDelayerFilterer{contract: contract}}, nil
47}
48
49// WithdrawalDelayer is an auto generated Go binding around an Ethereum contract.
50type WithdrawalDelayer struct {
51 WithdrawalDelayerCaller // Read-only binding to the contract
52 WithdrawalDelayerTransactor // Write-only binding to the contract
53 WithdrawalDelayerFilterer // Log filterer for contract events
54}
55
56// WithdrawalDelayerCaller is an auto generated read-only Go binding around an Ethereum contract.
57type WithdrawalDelayerCaller struct {
58 contract *bind.BoundContract // Generic contract wrapper for the low level calls
59}
60
61// WithdrawalDelayerTransactor is an auto generated write-only Go binding around an Ethereum contract.
62type WithdrawalDelayerTransactor struct {
63 contract *bind.BoundContract // Generic contract wrapper for the low level calls
64}
65
66// WithdrawalDelayerFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
67type WithdrawalDelayerFilterer struct {
68 contract *bind.BoundContract // Generic contract wrapper for the low level calls
69}
70
71// WithdrawalDelayerSession is an auto generated Go binding around an Ethereum contract,
72// with pre-set call and transact options.
73type WithdrawalDelayerSession struct {
74 Contract *WithdrawalDelayer // Generic contract binding to set the session for
75 CallOpts bind.CallOpts // Call options to use throughout this session
76 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
77}
78
79// WithdrawalDelayerCallerSession is an auto generated read-only Go binding around an Ethereum contract,
80// with pre-set call options.
81type WithdrawalDelayerCallerSession struct {
82 Contract *WithdrawalDelayerCaller // Generic contract caller binding to set the session for
83 CallOpts bind.CallOpts // Call options to use throughout this session
84}
85
86// WithdrawalDelayerTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
87// with pre-set transact options.
88type WithdrawalDelayerTransactorSession struct {
89 Contract *WithdrawalDelayerTransactor // Generic contract transactor binding to set the session for
90 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
91}
92
93// WithdrawalDelayerRaw is an auto generated low-level Go binding around an Ethereum contract.
94type WithdrawalDelayerRaw struct {
95 Contract *WithdrawalDelayer // Generic contract binding to access the raw methods on
96}
97
98// WithdrawalDelayerCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
99type WithdrawalDelayerCallerRaw struct {
100 Contract *WithdrawalDelayerCaller // Generic read-only contract binding to access the raw methods on
101}
102
103// WithdrawalDelayerTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
104type WithdrawalDelayerTransactorRaw struct {
105 Contract *WithdrawalDelayerTransactor // Generic write-only contract binding to access the raw methods on
106}
107
108// NewWithdrawalDelayer creates a new instance of WithdrawalDelayer, bound to a specific deployed contract.
109func NewWithdrawalDelayer(address common.Address, backend bind.ContractBackend) (*WithdrawalDelayer, error) {
110 contract, err := bindWithdrawalDelayer(address, backend, backend, backend)
111 if err != nil {
112 return nil, err
113 }
114 return &WithdrawalDelayer{WithdrawalDelayerCaller: WithdrawalDelayerCaller{contract: contract}, WithdrawalDelayerTransactor: WithdrawalDelayerTransactor{contract: contract}, WithdrawalDelayerFilterer: WithdrawalDelayerFilterer{contract: contract}}, nil
115}
116
117// NewWithdrawalDelayerCaller creates a new read-only instance of WithdrawalDelayer, bound to a specific deployed contract.
118func NewWithdrawalDelayerCaller(address common.Address, caller bind.ContractCaller) (*WithdrawalDelayerCaller, error) {
119 contract, err := bindWithdrawalDelayer(address, caller, nil, nil)
120 if err != nil {
121 return nil, err
122 }
123 return &WithdrawalDelayerCaller{contract: contract}, nil
124}
125
126// NewWithdrawalDelayerTransactor creates a new write-only instance of WithdrawalDelayer, bound to a specific deployed contract.
127func NewWithdrawalDelayerTransactor(address common.Address, transactor bind.ContractTransactor) (*WithdrawalDelayerTransactor, error) {
128 contract, err := bindWithdrawalDelayer(address, nil, transactor, nil)
129 if err != nil {
130 return nil, err
131 }
132 return &WithdrawalDelayerTransactor{contract: contract}, nil
133}
134
135// NewWithdrawalDelayerFilterer creates a new log filterer instance of WithdrawalDelayer, bound to a specific deployed contract.
136func NewWithdrawalDelayerFilterer(address common.Address, filterer bind.ContractFilterer) (*WithdrawalDelayerFilterer, error) {
137 contract, err := bindWithdrawalDelayer(address, nil, nil, filterer)
138 if err != nil {
139 return nil, err
140 }
141 return &WithdrawalDelayerFilterer{contract: contract}, nil
142}
143
144// bindWithdrawalDelayer binds a generic wrapper to an already deployed contract.
145func bindWithdrawalDelayer(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
146 parsed, err := abi.JSON(strings.NewReader(WithdrawalDelayerABI))
147 if err != nil {
148 return nil, err
149 }
150 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil
151}
152
153// Call invokes the (constant) contract method with params as input values and
154// sets the output to result. The result type might be a single field for simple
155// returns, a slice of interfaces for anonymous returns and a struct for named
156// returns.
157func (_WithdrawalDelayer *WithdrawalDelayerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
158 return _WithdrawalDelayer.Contract.WithdrawalDelayerCaller.contract.Call(opts, result, method, params...)
159}
160
161// Transfer initiates a plain transaction to move funds to the contract, calling
162// its default method if one is available.
163func (_WithdrawalDelayer *WithdrawalDelayerRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
164 return _WithdrawalDelayer.Contract.WithdrawalDelayerTransactor.contract.Transfer(opts)
165}
166
167// Transact invokes the (paid) contract method with params as input values.
168func (_WithdrawalDelayer *WithdrawalDelayerRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
169 return _WithdrawalDelayer.Contract.WithdrawalDelayerTransactor.contract.Transact(opts, method, params...)
170}
171
172// Call invokes the (constant) contract method with params as input values and
173// sets the output to result. The result type might be a single field for simple
174// returns, a slice of interfaces for anonymous returns and a struct for named
175// returns.
176func (_WithdrawalDelayer *WithdrawalDelayerCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
177 return _WithdrawalDelayer.Contract.contract.Call(opts, result, method, params...)
178}
179
180// Transfer initiates a plain transaction to move funds to the contract, calling
181// its default method if one is available.
182func (_WithdrawalDelayer *WithdrawalDelayerTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
183 return _WithdrawalDelayer.Contract.contract.Transfer(opts)
184}
185
186// Transact invokes the (paid) contract method with params as input values.
187func (_WithdrawalDelayer *WithdrawalDelayerTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
188 return _WithdrawalDelayer.Contract.contract.Transact(opts, method, params...)
189}
190
191// MAXEMERGENCYMODETIME is a free data retrieval call binding the contract method 0xb4b8e39d.
192//
193// Solidity: function MAX_EMERGENCY_MODE_TIME() view returns(uint64)
194func (_WithdrawalDelayer *WithdrawalDelayerCaller) MAXEMERGENCYMODETIME(opts *bind.CallOpts) (uint64, error) {
195 var (
196 ret0 = new(uint64)
197 )
198 out := ret0
199 err := _WithdrawalDelayer.contract.Call(opts, out, "MAX_EMERGENCY_MODE_TIME")
200 return *ret0, err
201}
202
203// MAXEMERGENCYMODETIME is a free data retrieval call binding the contract method 0xb4b8e39d.
204//
205// Solidity: function MAX_EMERGENCY_MODE_TIME() view returns(uint64)
206func (_WithdrawalDelayer *WithdrawalDelayerSession) MAXEMERGENCYMODETIME() (uint64, error) {
207 return _WithdrawalDelayer.Contract.MAXEMERGENCYMODETIME(&_WithdrawalDelayer.CallOpts)
208}
209
210// MAXEMERGENCYMODETIME is a free data retrieval call binding the contract method 0xb4b8e39d.
211//
212// Solidity: function MAX_EMERGENCY_MODE_TIME() view returns(uint64)
213func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) MAXEMERGENCYMODETIME() (uint64, error) {
214 return _WithdrawalDelayer.Contract.MAXEMERGENCYMODETIME(&_WithdrawalDelayer.CallOpts)
215}
216
217// MAXWITHDRAWALDELAY is a free data retrieval call binding the contract method 0xa238f9df.
218//
219// Solidity: function MAX_WITHDRAWAL_DELAY() view returns(uint64)
220func (_WithdrawalDelayer *WithdrawalDelayerCaller) MAXWITHDRAWALDELAY(opts *bind.CallOpts) (uint64, error) {
221 var (
222 ret0 = new(uint64)
223 )
224 out := ret0
225 err := _WithdrawalDelayer.contract.Call(opts, out, "MAX_WITHDRAWAL_DELAY")
226 return *ret0, err
227}
228
229// MAXWITHDRAWALDELAY is a free data retrieval call binding the contract method 0xa238f9df.
230//
231// Solidity: function MAX_WITHDRAWAL_DELAY() view returns(uint64)
232func (_WithdrawalDelayer *WithdrawalDelayerSession) MAXWITHDRAWALDELAY() (uint64, error) {
233 return _WithdrawalDelayer.Contract.MAXWITHDRAWALDELAY(&_WithdrawalDelayer.CallOpts)
234}
235
236// MAXWITHDRAWALDELAY is a free data retrieval call binding the contract method 0xa238f9df.
237//
238// Solidity: function MAX_WITHDRAWAL_DELAY() view returns(uint64)
239func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) MAXWITHDRAWALDELAY() (uint64, error) {
240 return _WithdrawalDelayer.Contract.MAXWITHDRAWALDELAY(&_WithdrawalDelayer.CallOpts)
241}
242
243// DepositInfo is a free data retrieval call binding the contract method 0x493b0170.
244//
245// Solidity: function depositInfo(address _owner, address _token) view returns(uint192, uint64)
246func (_WithdrawalDelayer *WithdrawalDelayerCaller) DepositInfo(opts *bind.CallOpts, _owner common.Address, _token common.Address) (*big.Int, uint64, error) {
247 var (
248 ret0 = new(*big.Int)
249 ret1 = new(uint64)
250 )
251 out := &[]interface{}{
252 ret0,
253 ret1,
254 }
255 err := _WithdrawalDelayer.contract.Call(opts, out, "depositInfo", _owner, _token)
256 return *ret0, *ret1, err
257}
258
259// DepositInfo is a free data retrieval call binding the contract method 0x493b0170.
260//
261// Solidity: function depositInfo(address _owner, address _token) view returns(uint192, uint64)
262func (_WithdrawalDelayer *WithdrawalDelayerSession) DepositInfo(_owner common.Address, _token common.Address) (*big.Int, uint64, error) {
263 return _WithdrawalDelayer.Contract.DepositInfo(&_WithdrawalDelayer.CallOpts, _owner, _token)
264}
265
266// DepositInfo is a free data retrieval call binding the contract method 0x493b0170.
267//
268// Solidity: function depositInfo(address _owner, address _token) view returns(uint192, uint64)
269func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) DepositInfo(_owner common.Address, _token common.Address) (*big.Int, uint64, error) {
270 return _WithdrawalDelayer.Contract.DepositInfo(&_WithdrawalDelayer.CallOpts, _owner, _token)
271}
272
273// Deposits is a free data retrieval call binding the contract method 0x3d4dff7b.
274//
275// Solidity: function deposits(bytes32 ) view returns(uint192 amount, uint64 depositTimestamp)
276func (_WithdrawalDelayer *WithdrawalDelayerCaller) Deposits(opts *bind.CallOpts, arg0 [32]byte) (struct {
277 Amount *big.Int
278 DepositTimestamp uint64
279}, error) {
280 ret := new(struct {
281 Amount *big.Int
282 DepositTimestamp uint64
283 })
284 out := ret
285 err := _WithdrawalDelayer.contract.Call(opts, out, "deposits", arg0)
286 return *ret, err
287}
288
289// Deposits is a free data retrieval call binding the contract method 0x3d4dff7b.
290//
291// Solidity: function deposits(bytes32 ) view returns(uint192 amount, uint64 depositTimestamp)
292func (_WithdrawalDelayer *WithdrawalDelayerSession) Deposits(arg0 [32]byte) (struct {
293 Amount *big.Int
294 DepositTimestamp uint64
295}, error) {
296 return _WithdrawalDelayer.Contract.Deposits(&_WithdrawalDelayer.CallOpts, arg0)
297}
298
299// Deposits is a free data retrieval call binding the contract method 0x3d4dff7b.
300//
301// Solidity: function deposits(bytes32 ) view returns(uint192 amount, uint64 depositTimestamp)
302func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) Deposits(arg0 [32]byte) (struct {
303 Amount *big.Int
304 DepositTimestamp uint64
305}, error) {
306 return _WithdrawalDelayer.Contract.Deposits(&_WithdrawalDelayer.CallOpts, arg0)
307}
308
309// GetEmergencyModeStartingTime is a free data retrieval call binding the contract method 0x668cdd67.
310//
311// Solidity: function getEmergencyModeStartingTime() view returns(uint128)
312func (_WithdrawalDelayer *WithdrawalDelayerCaller) GetEmergencyModeStartingTime(opts *bind.CallOpts) (*big.Int, error) {
313 var (
314 ret0 = new(*big.Int)
315 )
316 out := ret0
317 err := _WithdrawalDelayer.contract.Call(opts, out, "getEmergencyModeStartingTime")
318 return *ret0, err
319}
320
321// GetEmergencyModeStartingTime is a free data retrieval call binding the contract method 0x668cdd67.
322//
323// Solidity: function getEmergencyModeStartingTime() view returns(uint128)
324func (_WithdrawalDelayer *WithdrawalDelayerSession) GetEmergencyModeStartingTime() (*big.Int, error) {
325 return _WithdrawalDelayer.Contract.GetEmergencyModeStartingTime(&_WithdrawalDelayer.CallOpts)
326}
327
328// GetEmergencyModeStartingTime is a free data retrieval call binding the contract method 0x668cdd67.
329//
330// Solidity: function getEmergencyModeStartingTime() view returns(uint128)
331func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) GetEmergencyModeStartingTime() (*big.Int, error) {
332 return _WithdrawalDelayer.Contract.GetEmergencyModeStartingTime(&_WithdrawalDelayer.CallOpts)
333}
334
335// GetHermezGovernanceDAOAddress is a free data retrieval call binding the contract method 0x580fc611.
336//
337// Solidity: function getHermezGovernanceDAOAddress() view returns(address)
338func (_WithdrawalDelayer *WithdrawalDelayerCaller) GetHermezGovernanceDAOAddress(opts *bind.CallOpts) (common.Address, error) {
339 var (
340 ret0 = new(common.Address)
341 )
342 out := ret0
343 err := _WithdrawalDelayer.contract.Call(opts, out, "getHermezGovernanceDAOAddress")
344 return *ret0, err
345}
346
347// GetHermezGovernanceDAOAddress is a free data retrieval call binding the contract method 0x580fc611.
348//
349// Solidity: function getHermezGovernanceDAOAddress() view returns(address)
350func (_WithdrawalDelayer *WithdrawalDelayerSession) GetHermezGovernanceDAOAddress() (common.Address, error) {
351 return _WithdrawalDelayer.Contract.GetHermezGovernanceDAOAddress(&_WithdrawalDelayer.CallOpts)
352}
353
354// GetHermezGovernanceDAOAddress is a free data retrieval call binding the contract method 0x580fc611.
355//
356// Solidity: function getHermezGovernanceDAOAddress() view returns(address)
357func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) GetHermezGovernanceDAOAddress() (common.Address, error) {
358 return _WithdrawalDelayer.Contract.GetHermezGovernanceDAOAddress(&_WithdrawalDelayer.CallOpts)
359}
360
361// GetHermezKeeperAddress is a free data retrieval call binding the contract method 0x305887f9.
362//
363// Solidity: function getHermezKeeperAddress() view returns(address)
364func (_WithdrawalDelayer *WithdrawalDelayerCaller) GetHermezKeeperAddress(opts *bind.CallOpts) (common.Address, error) {
365 var (
366 ret0 = new(common.Address)
367 )
368 out := ret0
369 err := _WithdrawalDelayer.contract.Call(opts, out, "getHermezKeeperAddress")
370 return *ret0, err
371}
372
373// GetHermezKeeperAddress is a free data retrieval call binding the contract method 0x305887f9.
374//
375// Solidity: function getHermezKeeperAddress() view returns(address)
376func (_WithdrawalDelayer *WithdrawalDelayerSession) GetHermezKeeperAddress() (common.Address, error) {
377 return _WithdrawalDelayer.Contract.GetHermezKeeperAddress(&_WithdrawalDelayer.CallOpts)
378}
379
380// GetHermezKeeperAddress is a free data retrieval call binding the contract method 0x305887f9.
381//
382// Solidity: function getHermezKeeperAddress() view returns(address)
383func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) GetHermezKeeperAddress() (common.Address, error) {
384 return _WithdrawalDelayer.Contract.GetHermezKeeperAddress(&_WithdrawalDelayer.CallOpts)
385}
386
387// GetWhiteHackGroupAddress is a free data retrieval call binding the contract method 0xae7efbbd.
388//
389// Solidity: function getWhiteHackGroupAddress() view returns(address)
390func (_WithdrawalDelayer *WithdrawalDelayerCaller) GetWhiteHackGroupAddress(opts *bind.CallOpts) (common.Address, error) {
391 var (
392 ret0 = new(common.Address)
393 )
394 out := ret0
395 err := _WithdrawalDelayer.contract.Call(opts, out, "getWhiteHackGroupAddress")
396 return *ret0, err
397}
398
399// GetWhiteHackGroupAddress is a free data retrieval call binding the contract method 0xae7efbbd.
400//
401// Solidity: function getWhiteHackGroupAddress() view returns(address)
402func (_WithdrawalDelayer *WithdrawalDelayerSession) GetWhiteHackGroupAddress() (common.Address, error) {
403 return _WithdrawalDelayer.Contract.GetWhiteHackGroupAddress(&_WithdrawalDelayer.CallOpts)
404}
405
406// GetWhiteHackGroupAddress is a free data retrieval call binding the contract method 0xae7efbbd.
407//
408// Solidity: function getWhiteHackGroupAddress() view returns(address)
409func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) GetWhiteHackGroupAddress() (common.Address, error) {
410 return _WithdrawalDelayer.Contract.GetWhiteHackGroupAddress(&_WithdrawalDelayer.CallOpts)
411}
412
413// GetWithdrawalDelay is a free data retrieval call binding the contract method 0x03160940.
414//
415// Solidity: function getWithdrawalDelay() view returns(uint128)
416func (_WithdrawalDelayer *WithdrawalDelayerCaller) GetWithdrawalDelay(opts *bind.CallOpts) (*big.Int, error) {
417 var (
418 ret0 = new(*big.Int)
419 )
420 out := ret0
421 err := _WithdrawalDelayer.contract.Call(opts, out, "getWithdrawalDelay")
422 return *ret0, err
423}
424
425// GetWithdrawalDelay is a free data retrieval call binding the contract method 0x03160940.
426//
427// Solidity: function getWithdrawalDelay() view returns(uint128)
428func (_WithdrawalDelayer *WithdrawalDelayerSession) GetWithdrawalDelay() (*big.Int, error) {
429 return _WithdrawalDelayer.Contract.GetWithdrawalDelay(&_WithdrawalDelayer.CallOpts)
430}
431
432// GetWithdrawalDelay is a free data retrieval call binding the contract method 0x03160940.
433//
434// Solidity: function getWithdrawalDelay() view returns(uint128)
435func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) GetWithdrawalDelay() (*big.Int, error) {
436 return _WithdrawalDelayer.Contract.GetWithdrawalDelay(&_WithdrawalDelayer.CallOpts)
437}
438
439// HermezRollupAddress is a free data retrieval call binding the contract method 0x0fd266d7.
440//
441// Solidity: function hermezRollupAddress() view returns(address)
442func (_WithdrawalDelayer *WithdrawalDelayerCaller) HermezRollupAddress(opts *bind.CallOpts) (common.Address, error) {
443 var (
444 ret0 = new(common.Address)
445 )
446 out := ret0
447 err := _WithdrawalDelayer.contract.Call(opts, out, "hermezRollupAddress")
448 return *ret0, err
449}
450
451// HermezRollupAddress is a free data retrieval call binding the contract method 0x0fd266d7.
452//
453// Solidity: function hermezRollupAddress() view returns(address)
454func (_WithdrawalDelayer *WithdrawalDelayerSession) HermezRollupAddress() (common.Address, error) {
455 return _WithdrawalDelayer.Contract.HermezRollupAddress(&_WithdrawalDelayer.CallOpts)
456}
457
458// HermezRollupAddress is a free data retrieval call binding the contract method 0x0fd266d7.
459//
460// Solidity: function hermezRollupAddress() view returns(address)
461func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) HermezRollupAddress() (common.Address, error) {
462 return _WithdrawalDelayer.Contract.HermezRollupAddress(&_WithdrawalDelayer.CallOpts)
463}
464
465// IsEmergencyMode is a free data retrieval call binding the contract method 0x20a194b8.
466//
467// Solidity: function isEmergencyMode() view returns(bool)
468func (_WithdrawalDelayer *WithdrawalDelayerCaller) IsEmergencyMode(opts *bind.CallOpts) (bool, error) {
469 var (
470 ret0 = new(bool)
471 )
472 out := ret0
473 err := _WithdrawalDelayer.contract.Call(opts, out, "isEmergencyMode")
474 return *ret0, err
475}
476
477// IsEmergencyMode is a free data retrieval call binding the contract method 0x20a194b8.
478//
479// Solidity: function isEmergencyMode() view returns(bool)
480func (_WithdrawalDelayer *WithdrawalDelayerSession) IsEmergencyMode() (bool, error) {
481 return _WithdrawalDelayer.Contract.IsEmergencyMode(&_WithdrawalDelayer.CallOpts)
482}
483
484// IsEmergencyMode is a free data retrieval call binding the contract method 0x20a194b8.
485//
486// Solidity: function isEmergencyMode() view returns(bool)
487func (_WithdrawalDelayer *WithdrawalDelayerCallerSession) IsEmergencyMode() (bool, error) {
488 return _WithdrawalDelayer.Contract.IsEmergencyMode(&_WithdrawalDelayer.CallOpts)
489}
490
491// ChangeWithdrawalDelay is a paid mutator transaction binding the contract method 0x0e670af5.
492//
493// Solidity: function changeWithdrawalDelay(uint64 _newWithdrawalDelay) returns()
494func (_WithdrawalDelayer *WithdrawalDelayerTransactor) ChangeWithdrawalDelay(opts *bind.TransactOpts, _newWithdrawalDelay uint64) (*types.Transaction, error) {
495 return _WithdrawalDelayer.contract.Transact(opts, "changeWithdrawalDelay", _newWithdrawalDelay)
496}
497
498// ChangeWithdrawalDelay is a paid mutator transaction binding the contract method 0x0e670af5.
499//
500// Solidity: function changeWithdrawalDelay(uint64 _newWithdrawalDelay) returns()
501func (_WithdrawalDelayer *WithdrawalDelayerSession) ChangeWithdrawalDelay(_newWithdrawalDelay uint64) (*types.Transaction, error) {
502 return _WithdrawalDelayer.Contract.ChangeWithdrawalDelay(&_WithdrawalDelayer.TransactOpts, _newWithdrawalDelay)
503}
504
505// ChangeWithdrawalDelay is a paid mutator transaction binding the contract method 0x0e670af5.
506//
507// Solidity: function changeWithdrawalDelay(uint64 _newWithdrawalDelay) returns()
508func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) ChangeWithdrawalDelay(_newWithdrawalDelay uint64) (*types.Transaction, error) {
509 return _WithdrawalDelayer.Contract.ChangeWithdrawalDelay(&_WithdrawalDelayer.TransactOpts, _newWithdrawalDelay)
510}
511
512// Deposit is a paid mutator transaction binding the contract method 0xcfc0b641.
513//
514// Solidity: function deposit(address _owner, address _token, uint192 _amount) payable returns()
515func (_WithdrawalDelayer *WithdrawalDelayerTransactor) Deposit(opts *bind.TransactOpts, _owner common.Address, _token common.Address, _amount *big.Int) (*types.Transaction, error) {
516 return _WithdrawalDelayer.contract.Transact(opts, "deposit", _owner, _token, _amount)
517}
518
519// Deposit is a paid mutator transaction binding the contract method 0xcfc0b641.
520//
521// Solidity: function deposit(address _owner, address _token, uint192 _amount) payable returns()
522func (_WithdrawalDelayer *WithdrawalDelayerSession) Deposit(_owner common.Address, _token common.Address, _amount *big.Int) (*types.Transaction, error) {
523 return _WithdrawalDelayer.Contract.Deposit(&_WithdrawalDelayer.TransactOpts, _owner, _token, _amount)
524}
525
526// Deposit is a paid mutator transaction binding the contract method 0xcfc0b641.
527//
528// Solidity: function deposit(address _owner, address _token, uint192 _amount) payable returns()
529func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) Deposit(_owner common.Address, _token common.Address, _amount *big.Int) (*types.Transaction, error) {
530 return _WithdrawalDelayer.Contract.Deposit(&_WithdrawalDelayer.TransactOpts, _owner, _token, _amount)
531}
532
533// EnableEmergencyMode is a paid mutator transaction binding the contract method 0xc5b1c7d0.
534//
535// Solidity: function enableEmergencyMode() returns()
536func (_WithdrawalDelayer *WithdrawalDelayerTransactor) EnableEmergencyMode(opts *bind.TransactOpts) (*types.Transaction, error) {
537 return _WithdrawalDelayer.contract.Transact(opts, "enableEmergencyMode")
538}
539
540// EnableEmergencyMode is a paid mutator transaction binding the contract method 0xc5b1c7d0.
541//
542// Solidity: function enableEmergencyMode() returns()
543func (_WithdrawalDelayer *WithdrawalDelayerSession) EnableEmergencyMode() (*types.Transaction, error) {
544 return _WithdrawalDelayer.Contract.EnableEmergencyMode(&_WithdrawalDelayer.TransactOpts)
545}
546
547// EnableEmergencyMode is a paid mutator transaction binding the contract method 0xc5b1c7d0.
548//
549// Solidity: function enableEmergencyMode() returns()
550func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) EnableEmergencyMode() (*types.Transaction, error) {
551 return _WithdrawalDelayer.Contract.EnableEmergencyMode(&_WithdrawalDelayer.TransactOpts)
552}
553
554// EscapeHatchWithdrawal is a paid mutator transaction binding the contract method 0xcf3a25d9.
555//
556// Solidity: function escapeHatchWithdrawal(address _to, address _token) returns()
557func (_WithdrawalDelayer *WithdrawalDelayerTransactor) EscapeHatchWithdrawal(opts *bind.TransactOpts, _to common.Address, _token common.Address) (*types.Transaction, error) {
558 return _WithdrawalDelayer.contract.Transact(opts, "escapeHatchWithdrawal", _to, _token)
559}
560
561// EscapeHatchWithdrawal is a paid mutator transaction binding the contract method 0xcf3a25d9.
562//
563// Solidity: function escapeHatchWithdrawal(address _to, address _token) returns()
564func (_WithdrawalDelayer *WithdrawalDelayerSession) EscapeHatchWithdrawal(_to common.Address, _token common.Address) (*types.Transaction, error) {
565 return _WithdrawalDelayer.Contract.EscapeHatchWithdrawal(&_WithdrawalDelayer.TransactOpts, _to, _token)
566}
567
568// EscapeHatchWithdrawal is a paid mutator transaction binding the contract method 0xcf3a25d9.
569//
570// Solidity: function escapeHatchWithdrawal(address _to, address _token) returns()
571func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) EscapeHatchWithdrawal(_to common.Address, _token common.Address) (*types.Transaction, error) {
572 return _WithdrawalDelayer.Contract.EscapeHatchWithdrawal(&_WithdrawalDelayer.TransactOpts, _to, _token)
573}
574
575// Initialize is a paid mutator transaction binding the contract method 0x16b487ff.
576//
577// Solidity: function initialize(uint64 _initialWithdrawalDelay, address _initialHermezRollup, address _initialHermezKeeperAddress, address _initialHermezGovernanceDAOAddress, address _initialWhiteHackGroupAddress) returns()
578func (_WithdrawalDelayer *WithdrawalDelayerTransactor) Initialize(opts *bind.TransactOpts, _initialWithdrawalDelay uint64, _initialHermezRollup common.Address, _initialHermezKeeperAddress common.Address, _initialHermezGovernanceDAOAddress common.Address, _initialWhiteHackGroupAddress common.Address) (*types.Transaction, error) {
579 return _WithdrawalDelayer.contract.Transact(opts, "initialize", _initialWithdrawalDelay, _initialHermezRollup, _initialHermezKeeperAddress, _initialHermezGovernanceDAOAddress, _initialWhiteHackGroupAddress)
580}
581
582// Initialize is a paid mutator transaction binding the contract method 0x16b487ff.
583//
584// Solidity: function initialize(uint64 _initialWithdrawalDelay, address _initialHermezRollup, address _initialHermezKeeperAddress, address _initialHermezGovernanceDAOAddress, address _initialWhiteHackGroupAddress) returns()
585func (_WithdrawalDelayer *WithdrawalDelayerSession) Initialize(_initialWithdrawalDelay uint64, _initialHermezRollup common.Address, _initialHermezKeeperAddress common.Address, _initialHermezGovernanceDAOAddress common.Address, _initialWhiteHackGroupAddress common.Address) (*types.Transaction, error) {
586 return _WithdrawalDelayer.Contract.Initialize(&_WithdrawalDelayer.TransactOpts, _initialWithdrawalDelay, _initialHermezRollup, _initialHermezKeeperAddress, _initialHermezGovernanceDAOAddress, _initialWhiteHackGroupAddress)
587}
588
589// Initialize is a paid mutator transaction binding the contract method 0x16b487ff.
590//
591// Solidity: function initialize(uint64 _initialWithdrawalDelay, address _initialHermezRollup, address _initialHermezKeeperAddress, address _initialHermezGovernanceDAOAddress, address _initialWhiteHackGroupAddress) returns()
592func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) Initialize(_initialWithdrawalDelay uint64, _initialHermezRollup common.Address, _initialHermezKeeperAddress common.Address, _initialHermezGovernanceDAOAddress common.Address, _initialWhiteHackGroupAddress common.Address) (*types.Transaction, error) {
593 return _WithdrawalDelayer.Contract.Initialize(&_WithdrawalDelayer.TransactOpts, _initialWithdrawalDelay, _initialHermezRollup, _initialHermezKeeperAddress, _initialHermezGovernanceDAOAddress, _initialWhiteHackGroupAddress)
594}
595
596// SetHermezGovernanceDAOAddress is a paid mutator transaction binding the contract method 0xacfd6ea8.
597//
598// Solidity: function setHermezGovernanceDAOAddress(address newAddress) returns()
599func (_WithdrawalDelayer *WithdrawalDelayerTransactor) SetHermezGovernanceDAOAddress(opts *bind.TransactOpts, newAddress common.Address) (*types.Transaction, error) {
600 return _WithdrawalDelayer.contract.Transact(opts, "setHermezGovernanceDAOAddress", newAddress)
601}
602
603// SetHermezGovernanceDAOAddress is a paid mutator transaction binding the contract method 0xacfd6ea8.
604//
605// Solidity: function setHermezGovernanceDAOAddress(address newAddress) returns()
606func (_WithdrawalDelayer *WithdrawalDelayerSession) SetHermezGovernanceDAOAddress(newAddress common.Address) (*types.Transaction, error) {
607 return _WithdrawalDelayer.Contract.SetHermezGovernanceDAOAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
608}
609
610// SetHermezGovernanceDAOAddress is a paid mutator transaction binding the contract method 0xacfd6ea8.
611//
612// Solidity: function setHermezGovernanceDAOAddress(address newAddress) returns()
613func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) SetHermezGovernanceDAOAddress(newAddress common.Address) (*types.Transaction, error) {
614 return _WithdrawalDelayer.Contract.SetHermezGovernanceDAOAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
615}
616
617// SetHermezKeeperAddress is a paid mutator transaction binding the contract method 0xd82b217c.
618//
619// Solidity: function setHermezKeeperAddress(address newAddress) returns()
620func (_WithdrawalDelayer *WithdrawalDelayerTransactor) SetHermezKeeperAddress(opts *bind.TransactOpts, newAddress common.Address) (*types.Transaction, error) {
621 return _WithdrawalDelayer.contract.Transact(opts, "setHermezKeeperAddress", newAddress)
622}
623
624// SetHermezKeeperAddress is a paid mutator transaction binding the contract method 0xd82b217c.
625//
626// Solidity: function setHermezKeeperAddress(address newAddress) returns()
627func (_WithdrawalDelayer *WithdrawalDelayerSession) SetHermezKeeperAddress(newAddress common.Address) (*types.Transaction, error) {
628 return _WithdrawalDelayer.Contract.SetHermezKeeperAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
629}
630
631// SetHermezKeeperAddress is a paid mutator transaction binding the contract method 0xd82b217c.
632//
633// Solidity: function setHermezKeeperAddress(address newAddress) returns()
634func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) SetHermezKeeperAddress(newAddress common.Address) (*types.Transaction, error) {
635 return _WithdrawalDelayer.Contract.SetHermezKeeperAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
636}
637
638// SetWhiteHackGroupAddress is a paid mutator transaction binding the contract method 0x0a4db01b.
639//
640// Solidity: function setWhiteHackGroupAddress(address newAddress) returns()
641func (_WithdrawalDelayer *WithdrawalDelayerTransactor) SetWhiteHackGroupAddress(opts *bind.TransactOpts, newAddress common.Address) (*types.Transaction, error) {
642 return _WithdrawalDelayer.contract.Transact(opts, "setWhiteHackGroupAddress", newAddress)
643}
644
645// SetWhiteHackGroupAddress is a paid mutator transaction binding the contract method 0x0a4db01b.
646//
647// Solidity: function setWhiteHackGroupAddress(address newAddress) returns()
648func (_WithdrawalDelayer *WithdrawalDelayerSession) SetWhiteHackGroupAddress(newAddress common.Address) (*types.Transaction, error) {
649 return _WithdrawalDelayer.Contract.SetWhiteHackGroupAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
650}
651
652// SetWhiteHackGroupAddress is a paid mutator transaction binding the contract method 0x0a4db01b.
653//
654// Solidity: function setWhiteHackGroupAddress(address newAddress) returns()
655func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) SetWhiteHackGroupAddress(newAddress common.Address) (*types.Transaction, error) {
656 return _WithdrawalDelayer.Contract.SetWhiteHackGroupAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
657}
658
659// Withdrawal is a paid mutator transaction binding the contract method 0xde35f282.
660//
661// Solidity: function withdrawal(address _owner, address _token) returns()
662func (_WithdrawalDelayer *WithdrawalDelayerTransactor) Withdrawal(opts *bind.TransactOpts, _owner common.Address, _token common.Address) (*types.Transaction, error) {
663 return _WithdrawalDelayer.contract.Transact(opts, "withdrawal", _owner, _token)
664}
665
666// Withdrawal is a paid mutator transaction binding the contract method 0xde35f282.
667//
668// Solidity: function withdrawal(address _owner, address _token) returns()
669func (_WithdrawalDelayer *WithdrawalDelayerSession) Withdrawal(_owner common.Address, _token common.Address) (*types.Transaction, error) {
670 return _WithdrawalDelayer.Contract.Withdrawal(&_WithdrawalDelayer.TransactOpts, _owner, _token)
671}
672
673// Withdrawal is a paid mutator transaction binding the contract method 0xde35f282.
674//
675// Solidity: function withdrawal(address _owner, address _token) returns()
676func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) Withdrawal(_owner common.Address, _token common.Address) (*types.Transaction, error) {
677 return _WithdrawalDelayer.Contract.Withdrawal(&_WithdrawalDelayer.TransactOpts, _owner, _token)
678}
679
680// WithdrawalDelayerDepositIterator is returned from FilterDeposit and is used to iterate over the raw logs and unpacked data for Deposit events raised by the WithdrawalDelayer contract.
681type WithdrawalDelayerDepositIterator struct {
682 Event *WithdrawalDelayerDeposit // Event containing the contract specifics and raw log
683
684 contract *bind.BoundContract // Generic contract to use for unpacking event data
685 event string // Event name to use for unpacking event data
686
687 logs chan types.Log // Log channel receiving the found contract events
688 sub ethereum.Subscription // Subscription for errors, completion and termination
689 done bool // Whether the subscription completed delivering logs
690 fail error // Occurred error to stop iteration
691}
692
693// Next advances the iterator to the subsequent event, returning whether there
694// are any more events found. In case of a retrieval or parsing error, false is
695// returned and Error() can be queried for the exact failure.
696func (it *WithdrawalDelayerDepositIterator) Next() bool {
697 // If the iterator failed, stop iterating
698 if it.fail != nil {
699 return false
700 }
701 // If the iterator completed, deliver directly whatever's available
702 if it.done {
703 select {
704 case log := <-it.logs:
705 it.Event = new(WithdrawalDelayerDeposit)
706 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
707 it.fail = err
708 return false
709 }
710 it.Event.Raw = log
711 return true
712
713 default:
714 return false
715 }
716 }
717 // Iterator still in progress, wait for either a data or an error event
718 select {
719 case log := <-it.logs:
720 it.Event = new(WithdrawalDelayerDeposit)
721 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
722 it.fail = err
723 return false
724 }
725 it.Event.Raw = log
726 return true
727
728 case err := <-it.sub.Err():
729 it.done = true
730 it.fail = err
731 return it.Next()
732 }
733}
734
735// Error returns any retrieval or parsing error occurred during filtering.
736func (it *WithdrawalDelayerDepositIterator) Error() error {
737 return it.fail
738}
739
740// Close terminates the iteration process, releasing any pending underlying
741// resources.
742func (it *WithdrawalDelayerDepositIterator) Close() error {
743 it.sub.Unsubscribe()
744 return nil
745}
746
747// WithdrawalDelayerDeposit represents a Deposit event raised by the WithdrawalDelayer contract.
748type WithdrawalDelayerDeposit struct {
749 Owner common.Address
750 Token common.Address
751 Amount *big.Int
752 DepositTimestamp uint64
753 Raw types.Log // Blockchain specific contextual infos
754}
755
756// FilterDeposit is a free log retrieval operation binding the contract event 0x41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd.
757//
758// Solidity: event Deposit(address indexed owner, address indexed token, uint192 amount, uint64 depositTimestamp)
759func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterDeposit(opts *bind.FilterOpts, owner []common.Address, token []common.Address) (*WithdrawalDelayerDepositIterator, error) {
760
761 var ownerRule []interface{}
762 for _, ownerItem := range owner {
763 ownerRule = append(ownerRule, ownerItem)
764 }
765 var tokenRule []interface{}
766 for _, tokenItem := range token {
767 tokenRule = append(tokenRule, tokenItem)
768 }
769
770 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "Deposit", ownerRule, tokenRule)
771 if err != nil {
772 return nil, err
773 }
774 return &WithdrawalDelayerDepositIterator{contract: _WithdrawalDelayer.contract, event: "Deposit", logs: logs, sub: sub}, nil
775}
776
777// WatchDeposit is a free log subscription operation binding the contract event 0x41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd.
778//
779// Solidity: event Deposit(address indexed owner, address indexed token, uint192 amount, uint64 depositTimestamp)
780func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchDeposit(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerDeposit, owner []common.Address, token []common.Address) (event.Subscription, error) {
781
782 var ownerRule []interface{}
783 for _, ownerItem := range owner {
784 ownerRule = append(ownerRule, ownerItem)
785 }
786 var tokenRule []interface{}
787 for _, tokenItem := range token {
788 tokenRule = append(tokenRule, tokenItem)
789 }
790
791 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "Deposit", ownerRule, tokenRule)
792 if err != nil {
793 return nil, err
794 }
795 return event.NewSubscription(func(quit <-chan struct{}) error {
796 defer sub.Unsubscribe()
797 for {
798 select {
799 case log := <-logs:
800 // New log arrived, parse the event and forward to the user
801 event := new(WithdrawalDelayerDeposit)
802 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Deposit", log); err != nil {
803 return err
804 }
805 event.Raw = log
806
807 select {
808 case sink <- event:
809 case err := <-sub.Err():
810 return err
811 case <-quit:
812 return nil
813 }
814 case err := <-sub.Err():
815 return err
816 case <-quit:
817 return nil
818 }
819 }
820 }), nil
821}
822
823// ParseDeposit is a log parse operation binding the contract event 0x41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd.
824//
825// Solidity: event Deposit(address indexed owner, address indexed token, uint192 amount, uint64 depositTimestamp)
826func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseDeposit(log types.Log) (*WithdrawalDelayerDeposit, error) {
827 event := new(WithdrawalDelayerDeposit)
828 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Deposit", log); err != nil {
829 return nil, err
830 }
831 return event, nil
832}
833
834// WithdrawalDelayerEmergencyModeEnabledIterator is returned from FilterEmergencyModeEnabled and is used to iterate over the raw logs and unpacked data for EmergencyModeEnabled events raised by the WithdrawalDelayer contract.
835type WithdrawalDelayerEmergencyModeEnabledIterator struct {
836 Event *WithdrawalDelayerEmergencyModeEnabled // Event containing the contract specifics and raw log
837
838 contract *bind.BoundContract // Generic contract to use for unpacking event data
839 event string // Event name to use for unpacking event data
840
841 logs chan types.Log // Log channel receiving the found contract events
842 sub ethereum.Subscription // Subscription for errors, completion and termination
843 done bool // Whether the subscription completed delivering logs
844 fail error // Occurred error to stop iteration
845}
846
847// Next advances the iterator to the subsequent event, returning whether there
848// are any more events found. In case of a retrieval or parsing error, false is
849// returned and Error() can be queried for the exact failure.
850func (it *WithdrawalDelayerEmergencyModeEnabledIterator) Next() bool {
851 // If the iterator failed, stop iterating
852 if it.fail != nil {
853 return false
854 }
855 // If the iterator completed, deliver directly whatever's available
856 if it.done {
857 select {
858 case log := <-it.logs:
859 it.Event = new(WithdrawalDelayerEmergencyModeEnabled)
860 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
861 it.fail = err
862 return false
863 }
864 it.Event.Raw = log
865 return true
866
867 default:
868 return false
869 }
870 }
871 // Iterator still in progress, wait for either a data or an error event
872 select {
873 case log := <-it.logs:
874 it.Event = new(WithdrawalDelayerEmergencyModeEnabled)
875 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
876 it.fail = err
877 return false
878 }
879 it.Event.Raw = log
880 return true
881
882 case err := <-it.sub.Err():
883 it.done = true
884 it.fail = err
885 return it.Next()
886 }
887}
888
889// Error returns any retrieval or parsing error occurred during filtering.
890func (it *WithdrawalDelayerEmergencyModeEnabledIterator) Error() error {
891 return it.fail
892}
893
894// Close terminates the iteration process, releasing any pending underlying
895// resources.
896func (it *WithdrawalDelayerEmergencyModeEnabledIterator) Close() error {
897 it.sub.Unsubscribe()
898 return nil
899}
900
901// WithdrawalDelayerEmergencyModeEnabled represents a EmergencyModeEnabled event raised by the WithdrawalDelayer contract.
902type WithdrawalDelayerEmergencyModeEnabled struct {
903 Raw types.Log // Blockchain specific contextual infos
904}
905
906// FilterEmergencyModeEnabled is a free log retrieval operation binding the contract event 0x2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c5.
907//
908// Solidity: event EmergencyModeEnabled()
909func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterEmergencyModeEnabled(opts *bind.FilterOpts) (*WithdrawalDelayerEmergencyModeEnabledIterator, error) {
910
911 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "EmergencyModeEnabled")
912 if err != nil {
913 return nil, err
914 }
915 return &WithdrawalDelayerEmergencyModeEnabledIterator{contract: _WithdrawalDelayer.contract, event: "EmergencyModeEnabled", logs: logs, sub: sub}, nil
916}
917
918// WatchEmergencyModeEnabled is a free log subscription operation binding the contract event 0x2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c5.
919//
920// Solidity: event EmergencyModeEnabled()
921func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchEmergencyModeEnabled(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerEmergencyModeEnabled) (event.Subscription, error) {
922
923 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "EmergencyModeEnabled")
924 if err != nil {
925 return nil, err
926 }
927 return event.NewSubscription(func(quit <-chan struct{}) error {
928 defer sub.Unsubscribe()
929 for {
930 select {
931 case log := <-logs:
932 // New log arrived, parse the event and forward to the user
933 event := new(WithdrawalDelayerEmergencyModeEnabled)
934 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EmergencyModeEnabled", log); err != nil {
935 return err
936 }
937 event.Raw = log
938
939 select {
940 case sink <- event:
941 case err := <-sub.Err():
942 return err
943 case <-quit:
944 return nil
945 }
946 case err := <-sub.Err():
947 return err
948 case <-quit:
949 return nil
950 }
951 }
952 }), nil
953}
954
955// ParseEmergencyModeEnabled is a log parse operation binding the contract event 0x2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c5.
956//
957// Solidity: event EmergencyModeEnabled()
958func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseEmergencyModeEnabled(log types.Log) (*WithdrawalDelayerEmergencyModeEnabled, error) {
959 event := new(WithdrawalDelayerEmergencyModeEnabled)
960 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EmergencyModeEnabled", log); err != nil {
961 return nil, err
962 }
963 return event, nil
964}
965
966// WithdrawalDelayerEscapeHatchWithdrawalIterator is returned from FilterEscapeHatchWithdrawal and is used to iterate over the raw logs and unpacked data for EscapeHatchWithdrawal events raised by the WithdrawalDelayer contract.
967type WithdrawalDelayerEscapeHatchWithdrawalIterator struct {
968 Event *WithdrawalDelayerEscapeHatchWithdrawal // Event containing the contract specifics and raw log
969
970 contract *bind.BoundContract // Generic contract to use for unpacking event data
971 event string // Event name to use for unpacking event data
972
973 logs chan types.Log // Log channel receiving the found contract events
974 sub ethereum.Subscription // Subscription for errors, completion and termination
975 done bool // Whether the subscription completed delivering logs
976 fail error // Occurred error to stop iteration
977}
978
979// Next advances the iterator to the subsequent event, returning whether there
980// are any more events found. In case of a retrieval or parsing error, false is
981// returned and Error() can be queried for the exact failure.
982func (it *WithdrawalDelayerEscapeHatchWithdrawalIterator) Next() bool {
983 // If the iterator failed, stop iterating
984 if it.fail != nil {
985 return false
986 }
987 // If the iterator completed, deliver directly whatever's available
988 if it.done {
989 select {
990 case log := <-it.logs:
991 it.Event = new(WithdrawalDelayerEscapeHatchWithdrawal)
992 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
993 it.fail = err
994 return false
995 }
996 it.Event.Raw = log
997 return true
998
999 default:
1000 return false
1001 }
1002 }
1003 // Iterator still in progress, wait for either a data or an error event
1004 select {
1005 case log := <-it.logs:
1006 it.Event = new(WithdrawalDelayerEscapeHatchWithdrawal)
1007 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1008 it.fail = err
1009 return false
1010 }
1011 it.Event.Raw = log
1012 return true
1013
1014 case err := <-it.sub.Err():
1015 it.done = true
1016 it.fail = err
1017 return it.Next()
1018 }
1019}
1020
1021// Error returns any retrieval or parsing error occurred during filtering.
1022func (it *WithdrawalDelayerEscapeHatchWithdrawalIterator) Error() error {
1023 return it.fail
1024}
1025
1026// Close terminates the iteration process, releasing any pending underlying
1027// resources.
1028func (it *WithdrawalDelayerEscapeHatchWithdrawalIterator) Close() error {
1029 it.sub.Unsubscribe()
1030 return nil
1031}
1032
1033// WithdrawalDelayerEscapeHatchWithdrawal represents a EscapeHatchWithdrawal event raised by the WithdrawalDelayer contract.
1034type WithdrawalDelayerEscapeHatchWithdrawal struct {
1035 Who common.Address
1036 To common.Address
1037 Token common.Address
1038 Raw types.Log // Blockchain specific contextual infos
1039}
1040
1041// FilterEscapeHatchWithdrawal is a free log retrieval operation binding the contract event 0x065a030f4e05509e10831215a77cf703ff0d78a252b9fa008749d832eb1f61d9.
1042//
1043// Solidity: event EscapeHatchWithdrawal(address indexed who, address indexed to, address indexed token)
1044func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterEscapeHatchWithdrawal(opts *bind.FilterOpts, who []common.Address, to []common.Address, token []common.Address) (*WithdrawalDelayerEscapeHatchWithdrawalIterator, error) {
1045
1046 var whoRule []interface{}
1047 for _, whoItem := range who {
1048 whoRule = append(whoRule, whoItem)
1049 }
1050 var toRule []interface{}
1051 for _, toItem := range to {
1052 toRule = append(toRule, toItem)
1053 }
1054 var tokenRule []interface{}
1055 for _, tokenItem := range token {
1056 tokenRule = append(tokenRule, tokenItem)
1057 }
1058
1059 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "EscapeHatchWithdrawal", whoRule, toRule, tokenRule)
1060 if err != nil {
1061 return nil, err
1062 }
1063 return &WithdrawalDelayerEscapeHatchWithdrawalIterator{contract: _WithdrawalDelayer.contract, event: "EscapeHatchWithdrawal", logs: logs, sub: sub}, nil
1064}
1065
1066// WatchEscapeHatchWithdrawal is a free log subscription operation binding the contract event 0x065a030f4e05509e10831215a77cf703ff0d78a252b9fa008749d832eb1f61d9.
1067//
1068// Solidity: event EscapeHatchWithdrawal(address indexed who, address indexed to, address indexed token)
1069func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchEscapeHatchWithdrawal(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerEscapeHatchWithdrawal, who []common.Address, to []common.Address, token []common.Address) (event.Subscription, error) {
1070
1071 var whoRule []interface{}
1072 for _, whoItem := range who {
1073 whoRule = append(whoRule, whoItem)
1074 }
1075 var toRule []interface{}
1076 for _, toItem := range to {
1077 toRule = append(toRule, toItem)
1078 }
1079 var tokenRule []interface{}
1080 for _, tokenItem := range token {
1081 tokenRule = append(tokenRule, tokenItem)
1082 }
1083
1084 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "EscapeHatchWithdrawal", whoRule, toRule, tokenRule)
1085 if err != nil {
1086 return nil, err
1087 }
1088 return event.NewSubscription(func(quit <-chan struct{}) error {
1089 defer sub.Unsubscribe()
1090 for {
1091 select {
1092 case log := <-logs:
1093 // New log arrived, parse the event and forward to the user
1094 event := new(WithdrawalDelayerEscapeHatchWithdrawal)
1095 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EscapeHatchWithdrawal", log); err != nil {
1096 return err
1097 }
1098 event.Raw = log
1099
1100 select {
1101 case sink <- event:
1102 case err := <-sub.Err():
1103 return err
1104 case <-quit:
1105 return nil
1106 }
1107 case err := <-sub.Err():
1108 return err
1109 case <-quit:
1110 return nil
1111 }
1112 }
1113 }), nil
1114}
1115
1116// ParseEscapeHatchWithdrawal is a log parse operation binding the contract event 0x065a030f4e05509e10831215a77cf703ff0d78a252b9fa008749d832eb1f61d9.
1117//
1118// Solidity: event EscapeHatchWithdrawal(address indexed who, address indexed to, address indexed token)
1119func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseEscapeHatchWithdrawal(log types.Log) (*WithdrawalDelayerEscapeHatchWithdrawal, error) {
1120 event := new(WithdrawalDelayerEscapeHatchWithdrawal)
1121 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EscapeHatchWithdrawal", log); err != nil {
1122 return nil, err
1123 }
1124 return event, nil
1125}
1126
1127// WithdrawalDelayerNewHermezGovernanceDAOAddressIterator is returned from FilterNewHermezGovernanceDAOAddress and is used to iterate over the raw logs and unpacked data for NewHermezGovernanceDAOAddress events raised by the WithdrawalDelayer contract.
1128type WithdrawalDelayerNewHermezGovernanceDAOAddressIterator struct {
1129 Event *WithdrawalDelayerNewHermezGovernanceDAOAddress // Event containing the contract specifics and raw log
1130
1131 contract *bind.BoundContract // Generic contract to use for unpacking event data
1132 event string // Event name to use for unpacking event data
1133
1134 logs chan types.Log // Log channel receiving the found contract events
1135 sub ethereum.Subscription // Subscription for errors, completion and termination
1136 done bool // Whether the subscription completed delivering logs
1137 fail error // Occurred error to stop iteration
1138}
1139
1140// Next advances the iterator to the subsequent event, returning whether there
1141// are any more events found. In case of a retrieval or parsing error, false is
1142// returned and Error() can be queried for the exact failure.
1143func (it *WithdrawalDelayerNewHermezGovernanceDAOAddressIterator) Next() bool {
1144 // If the iterator failed, stop iterating
1145 if it.fail != nil {
1146 return false
1147 }
1148 // If the iterator completed, deliver directly whatever's available
1149 if it.done {
1150 select {
1151 case log := <-it.logs:
1152 it.Event = new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1153 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1154 it.fail = err
1155 return false
1156 }
1157 it.Event.Raw = log
1158 return true
1159
1160 default:
1161 return false
1162 }
1163 }
1164 // Iterator still in progress, wait for either a data or an error event
1165 select {
1166 case log := <-it.logs:
1167 it.Event = new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1168 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1169 it.fail = err
1170 return false
1171 }
1172 it.Event.Raw = log
1173 return true
1174
1175 case err := <-it.sub.Err():
1176 it.done = true
1177 it.fail = err
1178 return it.Next()
1179 }
1180}
1181
1182// Error returns any retrieval or parsing error occurred during filtering.
1183func (it *WithdrawalDelayerNewHermezGovernanceDAOAddressIterator) Error() error {
1184 return it.fail
1185}
1186
1187// Close terminates the iteration process, releasing any pending underlying
1188// resources.
1189func (it *WithdrawalDelayerNewHermezGovernanceDAOAddressIterator) Close() error {
1190 it.sub.Unsubscribe()
1191 return nil
1192}
1193
1194// WithdrawalDelayerNewHermezGovernanceDAOAddress represents a NewHermezGovernanceDAOAddress event raised by the WithdrawalDelayer contract.
1195type WithdrawalDelayerNewHermezGovernanceDAOAddress struct {
1196 NewHermezGovernanceDAOAddress common.Address
1197 Raw types.Log // Blockchain specific contextual infos
1198}
1199
1200// FilterNewHermezGovernanceDAOAddress is a free log retrieval operation binding the contract event 0x03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1.
1201//
1202// Solidity: event NewHermezGovernanceDAOAddress(address newHermezGovernanceDAOAddress)
1203func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewHermezGovernanceDAOAddress(opts *bind.FilterOpts) (*WithdrawalDelayerNewHermezGovernanceDAOAddressIterator, error) {
1204
1205 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewHermezGovernanceDAOAddress")
1206 if err != nil {
1207 return nil, err
1208 }
1209 return &WithdrawalDelayerNewHermezGovernanceDAOAddressIterator{contract: _WithdrawalDelayer.contract, event: "NewHermezGovernanceDAOAddress", logs: logs, sub: sub}, nil
1210}
1211
1212// WatchNewHermezGovernanceDAOAddress is a free log subscription operation binding the contract event 0x03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1.
1213//
1214// Solidity: event NewHermezGovernanceDAOAddress(address newHermezGovernanceDAOAddress)
1215func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewHermezGovernanceDAOAddress(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewHermezGovernanceDAOAddress) (event.Subscription, error) {
1216
1217 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewHermezGovernanceDAOAddress")
1218 if err != nil {
1219 return nil, err
1220 }
1221 return event.NewSubscription(func(quit <-chan struct{}) error {
1222 defer sub.Unsubscribe()
1223 for {
1224 select {
1225 case log := <-logs:
1226 // New log arrived, parse the event and forward to the user
1227 event := new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1228 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezGovernanceDAOAddress", log); err != nil {
1229 return err
1230 }
1231 event.Raw = log
1232
1233 select {
1234 case sink <- event:
1235 case err := <-sub.Err():
1236 return err
1237 case <-quit:
1238 return nil
1239 }
1240 case err := <-sub.Err():
1241 return err
1242 case <-quit:
1243 return nil
1244 }
1245 }
1246 }), nil
1247}
1248
1249// ParseNewHermezGovernanceDAOAddress is a log parse operation binding the contract event 0x03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1.
1250//
1251// Solidity: event NewHermezGovernanceDAOAddress(address newHermezGovernanceDAOAddress)
1252func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewHermezGovernanceDAOAddress(log types.Log) (*WithdrawalDelayerNewHermezGovernanceDAOAddress, error) {
1253 event := new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1254 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezGovernanceDAOAddress", log); err != nil {
1255 return nil, err
1256 }
1257 return event, nil
1258}
1259
1260// WithdrawalDelayerNewHermezKeeperAddressIterator is returned from FilterNewHermezKeeperAddress and is used to iterate over the raw logs and unpacked data for NewHermezKeeperAddress events raised by the WithdrawalDelayer contract.
1261type WithdrawalDelayerNewHermezKeeperAddressIterator struct {
1262 Event *WithdrawalDelayerNewHermezKeeperAddress // Event containing the contract specifics and raw log
1263
1264 contract *bind.BoundContract // Generic contract to use for unpacking event data
1265 event string // Event name to use for unpacking event data
1266
1267 logs chan types.Log // Log channel receiving the found contract events
1268 sub ethereum.Subscription // Subscription for errors, completion and termination
1269 done bool // Whether the subscription completed delivering logs
1270 fail error // Occurred error to stop iteration
1271}
1272
1273// Next advances the iterator to the subsequent event, returning whether there
1274// are any more events found. In case of a retrieval or parsing error, false is
1275// returned and Error() can be queried for the exact failure.
1276func (it *WithdrawalDelayerNewHermezKeeperAddressIterator) Next() bool {
1277 // If the iterator failed, stop iterating
1278 if it.fail != nil {
1279 return false
1280 }
1281 // If the iterator completed, deliver directly whatever's available
1282 if it.done {
1283 select {
1284 case log := <-it.logs:
1285 it.Event = new(WithdrawalDelayerNewHermezKeeperAddress)
1286 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1287 it.fail = err
1288 return false
1289 }
1290 it.Event.Raw = log
1291 return true
1292
1293 default:
1294 return false
1295 }
1296 }
1297 // Iterator still in progress, wait for either a data or an error event
1298 select {
1299 case log := <-it.logs:
1300 it.Event = new(WithdrawalDelayerNewHermezKeeperAddress)
1301 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1302 it.fail = err
1303 return false
1304 }
1305 it.Event.Raw = log
1306 return true
1307
1308 case err := <-it.sub.Err():
1309 it.done = true
1310 it.fail = err
1311 return it.Next()
1312 }
1313}
1314
1315// Error returns any retrieval or parsing error occurred during filtering.
1316func (it *WithdrawalDelayerNewHermezKeeperAddressIterator) Error() error {
1317 return it.fail
1318}
1319
1320// Close terminates the iteration process, releasing any pending underlying
1321// resources.
1322func (it *WithdrawalDelayerNewHermezKeeperAddressIterator) Close() error {
1323 it.sub.Unsubscribe()
1324 return nil
1325}
1326
1327// WithdrawalDelayerNewHermezKeeperAddress represents a NewHermezKeeperAddress event raised by the WithdrawalDelayer contract.
1328type WithdrawalDelayerNewHermezKeeperAddress struct {
1329 NewHermezKeeperAddress common.Address
1330 Raw types.Log // Blockchain specific contextual infos
1331}
1332
1333// FilterNewHermezKeeperAddress is a free log retrieval operation binding the contract event 0xc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016.
1334//
1335// Solidity: event NewHermezKeeperAddress(address newHermezKeeperAddress)
1336func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewHermezKeeperAddress(opts *bind.FilterOpts) (*WithdrawalDelayerNewHermezKeeperAddressIterator, error) {
1337
1338 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewHermezKeeperAddress")
1339 if err != nil {
1340 return nil, err
1341 }
1342 return &WithdrawalDelayerNewHermezKeeperAddressIterator{contract: _WithdrawalDelayer.contract, event: "NewHermezKeeperAddress", logs: logs, sub: sub}, nil
1343}
1344
1345// WatchNewHermezKeeperAddress is a free log subscription operation binding the contract event 0xc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016.
1346//
1347// Solidity: event NewHermezKeeperAddress(address newHermezKeeperAddress)
1348func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewHermezKeeperAddress(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewHermezKeeperAddress) (event.Subscription, error) {
1349
1350 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewHermezKeeperAddress")
1351 if err != nil {
1352 return nil, err
1353 }
1354 return event.NewSubscription(func(quit <-chan struct{}) error {
1355 defer sub.Unsubscribe()
1356 for {
1357 select {
1358 case log := <-logs:
1359 // New log arrived, parse the event and forward to the user
1360 event := new(WithdrawalDelayerNewHermezKeeperAddress)
1361 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezKeeperAddress", log); err != nil {
1362 return err
1363 }
1364 event.Raw = log
1365
1366 select {
1367 case sink <- event:
1368 case err := <-sub.Err():
1369 return err
1370 case <-quit:
1371 return nil
1372 }
1373 case err := <-sub.Err():
1374 return err
1375 case <-quit:
1376 return nil
1377 }
1378 }
1379 }), nil
1380}
1381
1382// ParseNewHermezKeeperAddress is a log parse operation binding the contract event 0xc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016.
1383//
1384// Solidity: event NewHermezKeeperAddress(address newHermezKeeperAddress)
1385func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewHermezKeeperAddress(log types.Log) (*WithdrawalDelayerNewHermezKeeperAddress, error) {
1386 event := new(WithdrawalDelayerNewHermezKeeperAddress)
1387 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezKeeperAddress", log); err != nil {
1388 return nil, err
1389 }
1390 return event, nil
1391}
1392
1393// WithdrawalDelayerNewWhiteHackGroupAddressIterator is returned from FilterNewWhiteHackGroupAddress and is used to iterate over the raw logs and unpacked data for NewWhiteHackGroupAddress events raised by the WithdrawalDelayer contract.
1394type WithdrawalDelayerNewWhiteHackGroupAddressIterator struct {
1395 Event *WithdrawalDelayerNewWhiteHackGroupAddress // Event containing the contract specifics and raw log
1396
1397 contract *bind.BoundContract // Generic contract to use for unpacking event data
1398 event string // Event name to use for unpacking event data
1399
1400 logs chan types.Log // Log channel receiving the found contract events
1401 sub ethereum.Subscription // Subscription for errors, completion and termination
1402 done bool // Whether the subscription completed delivering logs
1403 fail error // Occurred error to stop iteration
1404}
1405
1406// Next advances the iterator to the subsequent event, returning whether there
1407// are any more events found. In case of a retrieval or parsing error, false is
1408// returned and Error() can be queried for the exact failure.
1409func (it *WithdrawalDelayerNewWhiteHackGroupAddressIterator) Next() bool {
1410 // If the iterator failed, stop iterating
1411 if it.fail != nil {
1412 return false
1413 }
1414 // If the iterator completed, deliver directly whatever's available
1415 if it.done {
1416 select {
1417 case log := <-it.logs:
1418 it.Event = new(WithdrawalDelayerNewWhiteHackGroupAddress)
1419 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1420 it.fail = err
1421 return false
1422 }
1423 it.Event.Raw = log
1424 return true
1425
1426 default:
1427 return false
1428 }
1429 }
1430 // Iterator still in progress, wait for either a data or an error event
1431 select {
1432 case log := <-it.logs:
1433 it.Event = new(WithdrawalDelayerNewWhiteHackGroupAddress)
1434 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1435 it.fail = err
1436 return false
1437 }
1438 it.Event.Raw = log
1439 return true
1440
1441 case err := <-it.sub.Err():
1442 it.done = true
1443 it.fail = err
1444 return it.Next()
1445 }
1446}
1447
1448// Error returns any retrieval or parsing error occurred during filtering.
1449func (it *WithdrawalDelayerNewWhiteHackGroupAddressIterator) Error() error {
1450 return it.fail
1451}
1452
1453// Close terminates the iteration process, releasing any pending underlying
1454// resources.
1455func (it *WithdrawalDelayerNewWhiteHackGroupAddressIterator) Close() error {
1456 it.sub.Unsubscribe()
1457 return nil
1458}
1459
1460// WithdrawalDelayerNewWhiteHackGroupAddress represents a NewWhiteHackGroupAddress event raised by the WithdrawalDelayer contract.
1461type WithdrawalDelayerNewWhiteHackGroupAddress struct {
1462 NewWhiteHackGroupAddress common.Address
1463 Raw types.Log // Blockchain specific contextual infos
1464}
1465
1466// FilterNewWhiteHackGroupAddress is a free log retrieval operation binding the contract event 0x284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011.
1467//
1468// Solidity: event NewWhiteHackGroupAddress(address newWhiteHackGroupAddress)
1469func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewWhiteHackGroupAddress(opts *bind.FilterOpts) (*WithdrawalDelayerNewWhiteHackGroupAddressIterator, error) {
1470
1471 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewWhiteHackGroupAddress")
1472 if err != nil {
1473 return nil, err
1474 }
1475 return &WithdrawalDelayerNewWhiteHackGroupAddressIterator{contract: _WithdrawalDelayer.contract, event: "NewWhiteHackGroupAddress", logs: logs, sub: sub}, nil
1476}
1477
1478// WatchNewWhiteHackGroupAddress is a free log subscription operation binding the contract event 0x284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011.
1479//
1480// Solidity: event NewWhiteHackGroupAddress(address newWhiteHackGroupAddress)
1481func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewWhiteHackGroupAddress(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewWhiteHackGroupAddress) (event.Subscription, error) {
1482
1483 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewWhiteHackGroupAddress")
1484 if err != nil {
1485 return nil, err
1486 }
1487 return event.NewSubscription(func(quit <-chan struct{}) error {
1488 defer sub.Unsubscribe()
1489 for {
1490 select {
1491 case log := <-logs:
1492 // New log arrived, parse the event and forward to the user
1493 event := new(WithdrawalDelayerNewWhiteHackGroupAddress)
1494 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWhiteHackGroupAddress", log); err != nil {
1495 return err
1496 }
1497 event.Raw = log
1498
1499 select {
1500 case sink <- event:
1501 case err := <-sub.Err():
1502 return err
1503 case <-quit:
1504 return nil
1505 }
1506 case err := <-sub.Err():
1507 return err
1508 case <-quit:
1509 return nil
1510 }
1511 }
1512 }), nil
1513}
1514
1515// ParseNewWhiteHackGroupAddress is a log parse operation binding the contract event 0x284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011.
1516//
1517// Solidity: event NewWhiteHackGroupAddress(address newWhiteHackGroupAddress)
1518func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewWhiteHackGroupAddress(log types.Log) (*WithdrawalDelayerNewWhiteHackGroupAddress, error) {
1519 event := new(WithdrawalDelayerNewWhiteHackGroupAddress)
1520 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWhiteHackGroupAddress", log); err != nil {
1521 return nil, err
1522 }
1523 return event, nil
1524}
1525
1526// WithdrawalDelayerNewWithdrawalDelayIterator is returned from FilterNewWithdrawalDelay and is used to iterate over the raw logs and unpacked data for NewWithdrawalDelay events raised by the WithdrawalDelayer contract.
1527type WithdrawalDelayerNewWithdrawalDelayIterator struct {
1528 Event *WithdrawalDelayerNewWithdrawalDelay // Event containing the contract specifics and raw log
1529
1530 contract *bind.BoundContract // Generic contract to use for unpacking event data
1531 event string // Event name to use for unpacking event data
1532
1533 logs chan types.Log // Log channel receiving the found contract events
1534 sub ethereum.Subscription // Subscription for errors, completion and termination
1535 done bool // Whether the subscription completed delivering logs
1536 fail error // Occurred error to stop iteration
1537}
1538
1539// Next advances the iterator to the subsequent event, returning whether there
1540// are any more events found. In case of a retrieval or parsing error, false is
1541// returned and Error() can be queried for the exact failure.
1542func (it *WithdrawalDelayerNewWithdrawalDelayIterator) Next() bool {
1543 // If the iterator failed, stop iterating
1544 if it.fail != nil {
1545 return false
1546 }
1547 // If the iterator completed, deliver directly whatever's available
1548 if it.done {
1549 select {
1550 case log := <-it.logs:
1551 it.Event = new(WithdrawalDelayerNewWithdrawalDelay)
1552 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1553 it.fail = err
1554 return false
1555 }
1556 it.Event.Raw = log
1557 return true
1558
1559 default:
1560 return false
1561 }
1562 }
1563 // Iterator still in progress, wait for either a data or an error event
1564 select {
1565 case log := <-it.logs:
1566 it.Event = new(WithdrawalDelayerNewWithdrawalDelay)
1567 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1568 it.fail = err
1569 return false
1570 }
1571 it.Event.Raw = log
1572 return true
1573
1574 case err := <-it.sub.Err():
1575 it.done = true
1576 it.fail = err
1577 return it.Next()
1578 }
1579}
1580
1581// Error returns any retrieval or parsing error occurred during filtering.
1582func (it *WithdrawalDelayerNewWithdrawalDelayIterator) Error() error {
1583 return it.fail
1584}
1585
1586// Close terminates the iteration process, releasing any pending underlying
1587// resources.
1588func (it *WithdrawalDelayerNewWithdrawalDelayIterator) Close() error {
1589 it.sub.Unsubscribe()
1590 return nil
1591}
1592
1593// WithdrawalDelayerNewWithdrawalDelay represents a NewWithdrawalDelay event raised by the WithdrawalDelayer contract.
1594type WithdrawalDelayerNewWithdrawalDelay struct {
1595 WithdrawalDelay uint64
1596 Raw types.Log // Blockchain specific contextual infos
1597}
1598
1599// FilterNewWithdrawalDelay is a free log retrieval operation binding the contract event 0x6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7.
1600//
1601// Solidity: event NewWithdrawalDelay(uint64 withdrawalDelay)
1602func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewWithdrawalDelay(opts *bind.FilterOpts) (*WithdrawalDelayerNewWithdrawalDelayIterator, error) {
1603
1604 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewWithdrawalDelay")
1605 if err != nil {
1606 return nil, err
1607 }
1608 return &WithdrawalDelayerNewWithdrawalDelayIterator{contract: _WithdrawalDelayer.contract, event: "NewWithdrawalDelay", logs: logs, sub: sub}, nil
1609}
1610
1611// WatchNewWithdrawalDelay is a free log subscription operation binding the contract event 0x6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7.
1612//
1613// Solidity: event NewWithdrawalDelay(uint64 withdrawalDelay)
1614func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewWithdrawalDelay(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewWithdrawalDelay) (event.Subscription, error) {
1615
1616 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewWithdrawalDelay")
1617 if err != nil {
1618 return nil, err
1619 }
1620 return event.NewSubscription(func(quit <-chan struct{}) error {
1621 defer sub.Unsubscribe()
1622 for {
1623 select {
1624 case log := <-logs:
1625 // New log arrived, parse the event and forward to the user
1626 event := new(WithdrawalDelayerNewWithdrawalDelay)
1627 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWithdrawalDelay", log); err != nil {
1628 return err
1629 }
1630 event.Raw = log
1631
1632 select {
1633 case sink <- event:
1634 case err := <-sub.Err():
1635 return err
1636 case <-quit:
1637 return nil
1638 }
1639 case err := <-sub.Err():
1640 return err
1641 case <-quit:
1642 return nil
1643 }
1644 }
1645 }), nil
1646}
1647
1648// ParseNewWithdrawalDelay is a log parse operation binding the contract event 0x6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7.
1649//
1650// Solidity: event NewWithdrawalDelay(uint64 withdrawalDelay)
1651func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewWithdrawalDelay(log types.Log) (*WithdrawalDelayerNewWithdrawalDelay, error) {
1652 event := new(WithdrawalDelayerNewWithdrawalDelay)
1653 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWithdrawalDelay", log); err != nil {
1654 return nil, err
1655 }
1656 return event, nil
1657}
1658
1659// WithdrawalDelayerWithdrawIterator is returned from FilterWithdraw and is used to iterate over the raw logs and unpacked data for Withdraw events raised by the WithdrawalDelayer contract.
1660type WithdrawalDelayerWithdrawIterator struct {
1661 Event *WithdrawalDelayerWithdraw // Event containing the contract specifics and raw log
1662
1663 contract *bind.BoundContract // Generic contract to use for unpacking event data
1664 event string // Event name to use for unpacking event data
1665
1666 logs chan types.Log // Log channel receiving the found contract events
1667 sub ethereum.Subscription // Subscription for errors, completion and termination
1668 done bool // Whether the subscription completed delivering logs
1669 fail error // Occurred error to stop iteration
1670}
1671
1672// Next advances the iterator to the subsequent event, returning whether there
1673// are any more events found. In case of a retrieval or parsing error, false is
1674// returned and Error() can be queried for the exact failure.
1675func (it *WithdrawalDelayerWithdrawIterator) Next() bool {
1676 // If the iterator failed, stop iterating
1677 if it.fail != nil {
1678 return false
1679 }
1680 // If the iterator completed, deliver directly whatever's available
1681 if it.done {
1682 select {
1683 case log := <-it.logs:
1684 it.Event = new(WithdrawalDelayerWithdraw)
1685 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1686 it.fail = err
1687 return false
1688 }
1689 it.Event.Raw = log
1690 return true
1691
1692 default:
1693 return false
1694 }
1695 }
1696 // Iterator still in progress, wait for either a data or an error event
1697 select {
1698 case log := <-it.logs:
1699 it.Event = new(WithdrawalDelayerWithdraw)
1700 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1701 it.fail = err
1702 return false
1703 }
1704 it.Event.Raw = log
1705 return true
1706
1707 case err := <-it.sub.Err():
1708 it.done = true
1709 it.fail = err
1710 return it.Next()
1711 }
1712}
1713
1714// Error returns any retrieval or parsing error occurred during filtering.
1715func (it *WithdrawalDelayerWithdrawIterator) Error() error {
1716 return it.fail
1717}
1718
1719// Close terminates the iteration process, releasing any pending underlying
1720// resources.
1721func (it *WithdrawalDelayerWithdrawIterator) Close() error {
1722 it.sub.Unsubscribe()
1723 return nil
1724}
1725
1726// WithdrawalDelayerWithdraw represents a Withdraw event raised by the WithdrawalDelayer contract.
1727type WithdrawalDelayerWithdraw struct {
1728 Token common.Address
1729 Owner common.Address
1730 Amount *big.Int
1731 Raw types.Log // Blockchain specific contextual infos
1732}
1733
1734// FilterWithdraw is a free log retrieval operation binding the contract event 0x72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf3271.
1735//
1736// Solidity: event Withdraw(address indexed token, address indexed owner, uint192 amount)
1737func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterWithdraw(opts *bind.FilterOpts, token []common.Address, owner []common.Address) (*WithdrawalDelayerWithdrawIterator, error) {
1738
1739 var tokenRule []interface{}
1740 for _, tokenItem := range token {
1741 tokenRule = append(tokenRule, tokenItem)
1742 }
1743 var ownerRule []interface{}
1744 for _, ownerItem := range owner {
1745 ownerRule = append(ownerRule, ownerItem)
1746 }
1747
1748 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "Withdraw", tokenRule, ownerRule)
1749 if err != nil {
1750 return nil, err
1751 }
1752 return &WithdrawalDelayerWithdrawIterator{contract: _WithdrawalDelayer.contract, event: "Withdraw", logs: logs, sub: sub}, nil
1753}
1754
1755// WatchWithdraw is a free log subscription operation binding the contract event 0x72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf3271.
1756//
1757// Solidity: event Withdraw(address indexed token, address indexed owner, uint192 amount)
1758func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchWithdraw(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerWithdraw, token []common.Address, owner []common.Address) (event.Subscription, error) {
1759
1760 var tokenRule []interface{}
1761 for _, tokenItem := range token {
1762 tokenRule = append(tokenRule, tokenItem)
1763 }
1764 var ownerRule []interface{}
1765 for _, ownerItem := range owner {
1766 ownerRule = append(ownerRule, ownerItem)
1767 }
1768
1769 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "Withdraw", tokenRule, ownerRule)
1770 if err != nil {
1771 return nil, err
1772 }
1773 return event.NewSubscription(func(quit <-chan struct{}) error {
1774 defer sub.Unsubscribe()
1775 for {
1776 select {
1777 case log := <-logs:
1778 // New log arrived, parse the event and forward to the user
1779 event := new(WithdrawalDelayerWithdraw)
1780 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Withdraw", log); err != nil {
1781 return err
1782 }
1783 event.Raw = log
1784
1785 select {
1786 case sink <- event:
1787 case err := <-sub.Err():
1788 return err
1789 case <-quit:
1790 return nil
1791 }
1792 case err := <-sub.Err():
1793 return err
1794 case <-quit:
1795 return nil
1796 }
1797 }
1798 }), nil
1799}
1800
1801// ParseWithdraw is a log parse operation binding the contract event 0x72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf3271.
1802//
1803// Solidity: event Withdraw(address indexed token, address indexed owner, uint192 amount)
1804func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseWithdraw(log types.Log) (*WithdrawalDelayerWithdraw, error) {
1805 event := new(WithdrawalDelayerWithdraw)
1806 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Withdraw", log); err != nil {
1807 return nil, err
1808 }
1809 return event, nil
1810}