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\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"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\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"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\":[],\"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\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"operatorData\",\"type\":\"bytes\"}],\"name\":\"tokensReceived\",\"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\"},{\"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\":\"withdrawalDelayerInitializer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]"
31
32// WithdrawalDelayerBin is the compiled bytecode used for deploying new contracts.
33var WithdrawalDelayerBin = "0x608060405234801561001057600080fd5b50611f43806100206000396000f3fe6080604052600436106101295760003560e01c8063580fc611116100ab578063ae7efbbd1161006f578063ae7efbbd146104f1578063b4b8e39d14610506578063c5b1c7d01461051b578063cfc0b64114610530578063d82b217c14610570578063de35f282146105a357610129565b8063580fc61114610420578063668cdd67146104355780637fd6b1021461044a578063a238f9df1461048d578063acfd6ea8146104be57610129565b806320a194b8116100f257806320a194b8146102f8578063305887f91461032157806336e566ed146103365780633d4dff7b14610390578063493b0170146103e557610129565b806223de291461012e57806303160940146102275780630a4db01b146102615780630e670af5146102945780630fd266d7146102c7575b600080fd5b34801561013a57600080fd5b50610225600480360360c081101561015157600080fd5b6001600160a01b03823581169260208101358216926040820135909216916060820135919081019060a08101608082013564010000000081111561019457600080fd5b8201836020820111156101a657600080fd5b803590602001918460018302840111640100000000831117156101c857600080fd5b9193909290916020810190356401000000008111156101e657600080fd5b8201836020820111156101f857600080fd5b8035906020019184600183028401116401000000008311171561021a57600080fd5b5090925090506105de565b005b34801561023357600080fd5b5061023c610830565b604080516fffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561026d57600080fd5b506102256004803603602081101561028457600080fd5b50356001600160a01b031661083f565b3480156102a057600080fd5b50610225600480360360208110156102b757600080fd5b50356001600160401b03166108eb565b3480156102d357600080fd5b506102dc610a1b565b604080516001600160a01b039092168252519081900360200190f35b34801561030457600080fd5b5061030d610a2a565b604080519115158252519081900360200190f35b34801561032d57600080fd5b506102dc610a3a565b34801561034257600080fd5b50610225600480360360a081101561035957600080fd5b506001600160401b03813516906001600160a01b036020820135811691604081013582169160608201358116916080013516610a49565b34801561039c57600080fd5b506103ba600480360360208110156103b357600080fd5b5035610bfc565b604080516001600160c01b0390931683526001600160401b0390911660208301528051918290030190f35b3480156103f157600080fd5b506103ba6004803603604081101561040857600080fd5b506001600160a01b0381358116916020013516610c29565b34801561042c57600080fd5b506102dc610cba565b34801561044157600080fd5b5061023c610cc9565b34801561045657600080fd5b506102256004803603606081101561046d57600080fd5b506001600160a01b03813581169160208101359091169060400135610cdf565b34801561049957600080fd5b506104a2610f0b565b604080516001600160401b039092168252519081900360200190f35b3480156104ca57600080fd5b50610225600480360360208110156104e157600080fd5b50356001600160a01b0316610f12565b3480156104fd57600080fd5b506102dc610fcb565b34801561051257600080fd5b506104a2610fda565b34801561052757600080fd5b50610225610fe1565b6102256004803603606081101561054657600080fd5b5080356001600160a01b0390811691602081013590911690604001356001600160c01b0316611109565b34801561057c57600080fd5b506102256004803603602081101561059357600080fd5b50356001600160a01b031661150a565b3480156105af57600080fd5b50610225600480360360408110156105c657600080fd5b506001600160a01b03813581169160200135166115c3565b60335460ff16610623576040805162461bcd60e51b815260206004820152601f6024820152600080516020611e9b833981519152604482015290519081900360640190fd5b6033805460ff191690556069546001600160a01b0388811691161461068a576040805162461bcd60e51b81526020600482015260186024820152774f6e6c79206865726d657a526f6c6c75704164647265737360401b604482015290519081900360640190fd5b826106cd576040805162461bcd60e51b815260206004820152600e60248201526d557365724461746120656d70747960901b604482015290519081900360640190fd5b6000848460208110156106df57600080fd5b506040805180820190915260208082527f6465706f73697428616464726573732c616464726573732c75696e7431393229910152356001600160e01b031916905063cfc0b64160e01b8114156107d45760008080610740876004818b611e72565b606081101561074e57600080fd5b5080356001600160a01b0390811694506020820135169250604001356001600160c01b031690508881146107c1576040805162461bcd60e51b8152602060048201526015602482015274105b5bdd5b9d081cd95b9d08191a5999995c995b9d605a1b604482015290519081900360640190fd5b6107cc833383611835565b505050610818565b6040805162461bcd60e51b81526020600482015260146024820152734e6f7420612076616c69642063616c6c6461746160601b604482015290519081900360640190fd5b50506033805460ff1916600117905550505050505050565b6065546001600160401b031690565b6067546001600160a01b03163314610891576040805162461bcd60e51b815260206004820152601060248201526f4f6e6c7920574847206164647265737360801b604482015290519081900360640190fd5b606780546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517f284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011916020908290030190a150565b6068546001600160a01b031633148061090e57506069546001600160a01b031633145b61095f576040805162461bcd60e51b815260206004820152601c60248201527f4f6e6c79206865726d657a206b6565706572206f7220726f6c6c757000000000604482015290519081900360640190fd5b621275006001600160401b03821611156109c0576040805162461bcd60e51b815260206004820152601c60248201527f45786365656473204d41585f5749544844524157414c5f44454c415900000000604482015290519081900360640190fd5b6065805467ffffffffffffffff19166001600160401b03838116919091179182905560408051929091168252517f6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7916020908290030190a150565b6069546001600160a01b031681565b606854600160a01b900460ff1690565b6068546001600160a01b031690565b600054610100900460ff1680610a625750610a6261197d565b80610a70575060005460ff16155b610aab5760405162461bcd60e51b815260040180806020018281038252602e815260200180611ee0602e913960400191505060405180910390fd5b600054610100900460ff16158015610ad6576000805460ff1961ff0019909116610100171660011790555b610ade611983565b6065805467ffffffffffffffff19166001600160401b038816179055606980546001600160a01b03199081166001600160a01b0388811691909117909255606880546066805484168886161790556067805484168786161790559091169186169190911760ff60a01b19169055604080516329965a1d60e01b815230600482018190527fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b602483015260448201529051731820a4b7618bde71dce8cdc73aab6c95905fad24916329965a1d91606480830192600092919082900301818387803b158015610bca57600080fd5b505af1158015610bde573d6000803e3d6000fd5b505050508015610bf4576000805461ff00191690555b505050505050565b606a602052600090815260409020546001600160c01b03811690600160c01b90046001600160401b031682565b600080610c34611e5b565b505060408051606094851b6001600160601b03199081166020808401919091529490951b909416603485015280518085036028018152604885018083528151918501919091206000908152606a9094529281902060888501909152546001600160c01b03811692839052600160c01b90046001600160401b031660689093018390525091565b6066546001600160a01b031690565b606554600160401b90046001600160401b031690565b60335460ff16610d24576040805162461bcd60e51b815260206004820152601f6024820152600080516020611e9b833981519152604482015290519081900360640190fd5b6033805460ff19169055606854600160a01b900460ff16610d82576040805162461bcd60e51b81526020600482015260136024820152724f6e6c7920456d657267656e6379204d6f646560681b604482015290519081900360640190fd5b6067546001600160a01b0316331480610da557506066546001600160a01b031633145b610df6576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e616e636544414f206f722057484700000000000000604482015290519081900360640190fd5b6067546001600160a01b0316331415610e7c576065546001600160401b03600160401b909104811662eff100018116429091161015610e7c576040805162461bcd60e51b815260206004820152601a60248201527f4e4f204d41585f454d455247454e43595f4d4f44455f54494d45000000000000604482015290519081900360640190fd5b6001600160a01b038216610e9957610e948382611a32565b610ea4565b610ea4828483611ad3565b816001600160a01b0316836001600160a01b0316336001600160a01b03167fde200220117ba95c9a6c4a1a13bb06b0b7be90faa85c8fb4576630119f891693846040518082815260200191505060405180910390a450506033805460ff1916600117905550565b6212750081565b6066546001600160a01b03163314610f71576040805162461bcd60e51b815260206004820152601a60248201527f4f6e6c79204865726d657a20476f7665726e616e63652044414f000000000000604482015290519081900360640190fd5b606680546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517f03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1916020908290030190a150565b6067546001600160a01b031690565b62eff10081565b6068546001600160a01b03163314611040576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c79206865726d657a4b6565706572416464726573730000000000000000604482015290519081900360640190fd5b606854600160a01b900460ff161561109f576040805162461bcd60e51b815260206004820152601e60248201527f456d657267656e6379206d6f646520616c726561647920656e61626c65640000604482015290519081900360640190fd5b6068805460ff60a01b1916600160a01b179055606580546001600160401b034216600160401b026fffffffffffffffff0000000000000000199091161790556040517f2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c590600090a1565b60335460ff1661114e576040805162461bcd60e51b815260206004820152601f6024820152600080516020611e9b833981519152604482015290519081900360640190fd5b6033805460ff191690556069546001600160a01b031633146111b2576040805162461bcd60e51b81526020600482015260186024820152774f6e6c79206865726d657a526f6c6c75704164647265737360401b604482015290519081900360640190fd5b3415611276576001600160a01b03821615611214576040805162461bcd60e51b815260206004820152601d60248201527f4554482073686f756c6420626520746865203078302061646472657373000000604482015290519081900360640190fd5b34816001600160c01b031614611271576040805162461bcd60e51b815260206004820152601e60248201527f446966666572656e7420616d6f756e7420616e64206d73672e76616c75650000604482015290519081900360640190fd5b6114ed565b60695460408051636eb1769f60e11b81526001600160a01b03928316600482015230602482015290516001600160c01b0384169285169163dd62ed3e916044808301926020929190829003018186803b1580156112d257600080fd5b505afa1580156112e6573d6000803e3d6000fd5b505050506040513d60208110156112fc57600080fd5b50511015611351576040805162461bcd60e51b815260206004820152601d60248201527f446f65736e2774206861766520656e6f75676820616c6c6f77616e6365000000604482015290519081900360640190fd5b60006060836001600160a01b0316604051806060016040528060258152602001611ebb602591398051602091820120606954604080516001600160a01b0390921660248301523060448301526001600160c01b038816606480840191909152815180840390910181526084909201815292810180516001600160e01b03166001600160e01b031990931692909217825291518251909182918083835b6020831061140c5780518252601f1990920191602091820191016113ed565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461146e576040519150601f19603f3d011682016040523d82523d6000602084013e611473565b606091505b50915091508180156114a15750805115806114a1575080806020019051602081101561149e57600080fd5b50515b6114ea576040805162461bcd60e51b8152602060048201526015602482015274151bdad95b88151c985b9cd9995c8811985a5b1959605a1b604482015290519081900360640190fd5b50505b6114f8838383611835565b50506033805460ff1916600117905550565b6068546001600160a01b03163314611569576040805162461bcd60e51b815260206004820152601a60248201527f4f6e6c79204865726d657a204b65657065722041646472657373000000000000604482015290519081900360640190fd5b606880546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517fc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016916020908290030190a150565b60335460ff16611608576040805162461bcd60e51b815260206004820152601f6024820152600080516020611e9b833981519152604482015290519081900360640190fd5b6033805460ff19169055606854600160a01b900460ff1615611662576040805162461bcd60e51b815260206004820152600e60248201526d456d657267656e6379206d6f646560901b604482015290519081900360640190fd5b60408051606084811b6001600160601b03199081166020808501919091529185901b16603483015282518083036028018152604890920183528151918101919091206000818152606a909252919020546001600160c01b031680611704576040805162461bcd60e51b81526020600482015260146024820152734e6f2066756e647320746f20776974686472617760601b604482015290519081900360640190fd5b6065546000838152606a60205260409020546001600160401b03918216600160c01b9091048216018116429091161015611785576040805162461bcd60e51b815260206004820152601a60248201527f5769746864726177616c206e6f7420616c6c6f77656420796574000000000000604482015290519081900360640190fd5b6000828152606a60205260408120556001600160a01b0383166117ba576117b584826001600160c01b0316611a32565b6117ce565b6117ce8385836001600160c01b0316611ad3565b836001600160a01b0316836001600160a01b03167f72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf32718360405180826001600160c01b0316815260200191505060405180910390a350506033805460ff191660011790555050565b60408051606085811b6001600160601b03199081166020808501919091529186901b16603483015282518083036028018152604890920183528151918101919091206000818152606a909252919020546001600160c01b0390811683810191821610156118dc576040805162461bcd60e51b815260206004820152601060248201526f4465706f736974206f766572666c6f7760801b604482015290519081900360640190fd5b6000828152606a602090815260409182902080546001600160401b03428116600160c01b9081026001600160c01b038089166001600160c01b03199095169490941784161793849055855192891683529092049091169181019190915281516001600160a01b0380881693908916927f41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd929081900390910190a35050505050565b303b1590565b600054610100900460ff168061199c575061199c61197d565b806119aa575060005460ff16155b6119e55760405162461bcd60e51b815260040180806020018281038252602e815260200180611ee0602e913960400191505060405180910390fd5b600054610100900460ff16158015611a10576000805460ff1961ff0019909116610100171660011790555b6033805460ff191660011790558015611a2f576000805461ff00191690555b50565b6040516000906001600160a01b0384169083908381818185875af1925050503d8060008114611a7d576040519150601f19603f3d011682016040523d82523d6000602084013e611a82565b606091505b5050905080611ace576040805162461bcd60e51b8152602060048201526013602482015272115512081d1c985b9cd9995c8819985a5b1959606a1b604482015290519081900360640190fd5b505050565b6040805163555ddc6560e11b81526001600160a01b03851660048201527fac7fbab5f54a3ca8194167523c6753bfeb96a445279294b6125b68cce21770546024820152905160009160609183918291731820a4b7618bde71dce8cdc73aab6c95905fad249163aabbb8ca916044808301926020929190829003018186803b158015611b5d57600080fd5b505afa158015611b71573d6000803e3d6000fd5b505050506040513d6020811015611b8757600080fd5b50516001600160a01b03161415611b9f576000611ba2565b60015b90508015611cd257604080518082018252601b81527f73656e6428616464726573732c75696e743235362c627974657329000000000060209182015281516001600160a01b038881166024830152604482018890526060606483015260006084830152835180830360a401815260c4909201845291810180516001600160e01b0316634decdde360e11b17815292518151928a16939192909182918083835b60208310611c605780518252601f199092019160209182019101611c41565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611cc2576040519150601f19603f3d011682016040523d82523d6000602084013e611cc7565b606091505b509093509150611de9565b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0388811660248301526044808301899052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b17815292518151928a16939192909182918083835b60208310611d7b5780518252601f199092019160209182019101611d5c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611ddd576040519150601f19603f3d011682016040523d82523d6000602084013e611de2565b606091505b5090935091505b828015611e12575081511580611e125750818060200190516020811015611e0f57600080fd5b50515b610bf4576040805162461bcd60e51b8152602060048201526015602482015274151bdad95b88151c985b9cd9995c8811985a5b1959605a1b604482015290519081900360640190fd5b604080518082019091526000808252602082015290565b60008085851115611e81578182fd5b83861115611e8d578182fd5b505082019391909203915056fe5265656e7472616e637947756172643a207265656e7472616e742063616c6c007472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212208627d01a36cb65caf417b630b097c562d21a655bf5c386bcdde1eafb9d94cf7464736f6c634300060c0033"
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 0x7fd6b102.
555//
556// Solidity: function escapeHatchWithdrawal(address _to, address _token, uint256 _amount) returns()
557func (_WithdrawalDelayer *WithdrawalDelayerTransactor) EscapeHatchWithdrawal(opts *bind.TransactOpts, _to common.Address, _token common.Address, _amount *big.Int) (*types.Transaction, error) {
558 return _WithdrawalDelayer.contract.Transact(opts, "escapeHatchWithdrawal", _to, _token, _amount)
559}
560
561// EscapeHatchWithdrawal is a paid mutator transaction binding the contract method 0x7fd6b102.
562//
563// Solidity: function escapeHatchWithdrawal(address _to, address _token, uint256 _amount) returns()
564func (_WithdrawalDelayer *WithdrawalDelayerSession) EscapeHatchWithdrawal(_to common.Address, _token common.Address, _amount *big.Int) (*types.Transaction, error) {
565 return _WithdrawalDelayer.Contract.EscapeHatchWithdrawal(&_WithdrawalDelayer.TransactOpts, _to, _token, _amount)
566}
567
568// EscapeHatchWithdrawal is a paid mutator transaction binding the contract method 0x7fd6b102.
569//
570// Solidity: function escapeHatchWithdrawal(address _to, address _token, uint256 _amount) returns()
571func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) EscapeHatchWithdrawal(_to common.Address, _token common.Address, _amount *big.Int) (*types.Transaction, error) {
572 return _WithdrawalDelayer.Contract.EscapeHatchWithdrawal(&_WithdrawalDelayer.TransactOpts, _to, _token, _amount)
573}
574
575// SetHermezGovernanceDAOAddress is a paid mutator transaction binding the contract method 0xacfd6ea8.
576//
577// Solidity: function setHermezGovernanceDAOAddress(address newAddress) returns()
578func (_WithdrawalDelayer *WithdrawalDelayerTransactor) SetHermezGovernanceDAOAddress(opts *bind.TransactOpts, newAddress common.Address) (*types.Transaction, error) {
579 return _WithdrawalDelayer.contract.Transact(opts, "setHermezGovernanceDAOAddress", newAddress)
580}
581
582// SetHermezGovernanceDAOAddress is a paid mutator transaction binding the contract method 0xacfd6ea8.
583//
584// Solidity: function setHermezGovernanceDAOAddress(address newAddress) returns()
585func (_WithdrawalDelayer *WithdrawalDelayerSession) SetHermezGovernanceDAOAddress(newAddress common.Address) (*types.Transaction, error) {
586 return _WithdrawalDelayer.Contract.SetHermezGovernanceDAOAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
587}
588
589// SetHermezGovernanceDAOAddress is a paid mutator transaction binding the contract method 0xacfd6ea8.
590//
591// Solidity: function setHermezGovernanceDAOAddress(address newAddress) returns()
592func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) SetHermezGovernanceDAOAddress(newAddress common.Address) (*types.Transaction, error) {
593 return _WithdrawalDelayer.Contract.SetHermezGovernanceDAOAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
594}
595
596// SetHermezKeeperAddress is a paid mutator transaction binding the contract method 0xd82b217c.
597//
598// Solidity: function setHermezKeeperAddress(address newAddress) returns()
599func (_WithdrawalDelayer *WithdrawalDelayerTransactor) SetHermezKeeperAddress(opts *bind.TransactOpts, newAddress common.Address) (*types.Transaction, error) {
600 return _WithdrawalDelayer.contract.Transact(opts, "setHermezKeeperAddress", newAddress)
601}
602
603// SetHermezKeeperAddress is a paid mutator transaction binding the contract method 0xd82b217c.
604//
605// Solidity: function setHermezKeeperAddress(address newAddress) returns()
606func (_WithdrawalDelayer *WithdrawalDelayerSession) SetHermezKeeperAddress(newAddress common.Address) (*types.Transaction, error) {
607 return _WithdrawalDelayer.Contract.SetHermezKeeperAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
608}
609
610// SetHermezKeeperAddress is a paid mutator transaction binding the contract method 0xd82b217c.
611//
612// Solidity: function setHermezKeeperAddress(address newAddress) returns()
613func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) SetHermezKeeperAddress(newAddress common.Address) (*types.Transaction, error) {
614 return _WithdrawalDelayer.Contract.SetHermezKeeperAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
615}
616
617// SetWhiteHackGroupAddress is a paid mutator transaction binding the contract method 0x0a4db01b.
618//
619// Solidity: function setWhiteHackGroupAddress(address newAddress) returns()
620func (_WithdrawalDelayer *WithdrawalDelayerTransactor) SetWhiteHackGroupAddress(opts *bind.TransactOpts, newAddress common.Address) (*types.Transaction, error) {
621 return _WithdrawalDelayer.contract.Transact(opts, "setWhiteHackGroupAddress", newAddress)
622}
623
624// SetWhiteHackGroupAddress is a paid mutator transaction binding the contract method 0x0a4db01b.
625//
626// Solidity: function setWhiteHackGroupAddress(address newAddress) returns()
627func (_WithdrawalDelayer *WithdrawalDelayerSession) SetWhiteHackGroupAddress(newAddress common.Address) (*types.Transaction, error) {
628 return _WithdrawalDelayer.Contract.SetWhiteHackGroupAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
629}
630
631// SetWhiteHackGroupAddress is a paid mutator transaction binding the contract method 0x0a4db01b.
632//
633// Solidity: function setWhiteHackGroupAddress(address newAddress) returns()
634func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) SetWhiteHackGroupAddress(newAddress common.Address) (*types.Transaction, error) {
635 return _WithdrawalDelayer.Contract.SetWhiteHackGroupAddress(&_WithdrawalDelayer.TransactOpts, newAddress)
636}
637
638// TokensReceived is a paid mutator transaction binding the contract method 0x0023de29.
639//
640// Solidity: function tokensReceived(address operator, address from, address to, uint256 amount, bytes userData, bytes operatorData) returns()
641func (_WithdrawalDelayer *WithdrawalDelayerTransactor) TokensReceived(opts *bind.TransactOpts, operator common.Address, from common.Address, to common.Address, amount *big.Int, userData []byte, operatorData []byte) (*types.Transaction, error) {
642 return _WithdrawalDelayer.contract.Transact(opts, "tokensReceived", operator, from, to, amount, userData, operatorData)
643}
644
645// TokensReceived is a paid mutator transaction binding the contract method 0x0023de29.
646//
647// Solidity: function tokensReceived(address operator, address from, address to, uint256 amount, bytes userData, bytes operatorData) returns()
648func (_WithdrawalDelayer *WithdrawalDelayerSession) TokensReceived(operator common.Address, from common.Address, to common.Address, amount *big.Int, userData []byte, operatorData []byte) (*types.Transaction, error) {
649 return _WithdrawalDelayer.Contract.TokensReceived(&_WithdrawalDelayer.TransactOpts, operator, from, to, amount, userData, operatorData)
650}
651
652// TokensReceived is a paid mutator transaction binding the contract method 0x0023de29.
653//
654// Solidity: function tokensReceived(address operator, address from, address to, uint256 amount, bytes userData, bytes operatorData) returns()
655func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) TokensReceived(operator common.Address, from common.Address, to common.Address, amount *big.Int, userData []byte, operatorData []byte) (*types.Transaction, error) {
656 return _WithdrawalDelayer.Contract.TokensReceived(&_WithdrawalDelayer.TransactOpts, operator, from, to, amount, userData, operatorData)
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// WithdrawalDelayerInitializer is a paid mutator transaction binding the contract method 0x36e566ed.
681//
682// Solidity: function withdrawalDelayerInitializer(uint64 _initialWithdrawalDelay, address _initialHermezRollup, address _initialHermezKeeperAddress, address _initialHermezGovernanceDAOAddress, address _initialWhiteHackGroupAddress) returns()
683func (_WithdrawalDelayer *WithdrawalDelayerTransactor) WithdrawalDelayerInitializer(opts *bind.TransactOpts, _initialWithdrawalDelay uint64, _initialHermezRollup common.Address, _initialHermezKeeperAddress common.Address, _initialHermezGovernanceDAOAddress common.Address, _initialWhiteHackGroupAddress common.Address) (*types.Transaction, error) {
684 return _WithdrawalDelayer.contract.Transact(opts, "withdrawalDelayerInitializer", _initialWithdrawalDelay, _initialHermezRollup, _initialHermezKeeperAddress, _initialHermezGovernanceDAOAddress, _initialWhiteHackGroupAddress)
685}
686
687// WithdrawalDelayerInitializer is a paid mutator transaction binding the contract method 0x36e566ed.
688//
689// Solidity: function withdrawalDelayerInitializer(uint64 _initialWithdrawalDelay, address _initialHermezRollup, address _initialHermezKeeperAddress, address _initialHermezGovernanceDAOAddress, address _initialWhiteHackGroupAddress) returns()
690func (_WithdrawalDelayer *WithdrawalDelayerSession) WithdrawalDelayerInitializer(_initialWithdrawalDelay uint64, _initialHermezRollup common.Address, _initialHermezKeeperAddress common.Address, _initialHermezGovernanceDAOAddress common.Address, _initialWhiteHackGroupAddress common.Address) (*types.Transaction, error) {
691 return _WithdrawalDelayer.Contract.WithdrawalDelayerInitializer(&_WithdrawalDelayer.TransactOpts, _initialWithdrawalDelay, _initialHermezRollup, _initialHermezKeeperAddress, _initialHermezGovernanceDAOAddress, _initialWhiteHackGroupAddress)
692}
693
694// WithdrawalDelayerInitializer is a paid mutator transaction binding the contract method 0x36e566ed.
695//
696// Solidity: function withdrawalDelayerInitializer(uint64 _initialWithdrawalDelay, address _initialHermezRollup, address _initialHermezKeeperAddress, address _initialHermezGovernanceDAOAddress, address _initialWhiteHackGroupAddress) returns()
697func (_WithdrawalDelayer *WithdrawalDelayerTransactorSession) WithdrawalDelayerInitializer(_initialWithdrawalDelay uint64, _initialHermezRollup common.Address, _initialHermezKeeperAddress common.Address, _initialHermezGovernanceDAOAddress common.Address, _initialWhiteHackGroupAddress common.Address) (*types.Transaction, error) {
698 return _WithdrawalDelayer.Contract.WithdrawalDelayerInitializer(&_WithdrawalDelayer.TransactOpts, _initialWithdrawalDelay, _initialHermezRollup, _initialHermezKeeperAddress, _initialHermezGovernanceDAOAddress, _initialWhiteHackGroupAddress)
699}
700
701// 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.
702type WithdrawalDelayerDepositIterator struct {
703 Event *WithdrawalDelayerDeposit // Event containing the contract specifics and raw log
704
705 contract *bind.BoundContract // Generic contract to use for unpacking event data
706 event string // Event name to use for unpacking event data
707
708 logs chan types.Log // Log channel receiving the found contract events
709 sub ethereum.Subscription // Subscription for errors, completion and termination
710 done bool // Whether the subscription completed delivering logs
711 fail error // Occurred error to stop iteration
712}
713
714// Next advances the iterator to the subsequent event, returning whether there
715// are any more events found. In case of a retrieval or parsing error, false is
716// returned and Error() can be queried for the exact failure.
717func (it *WithdrawalDelayerDepositIterator) Next() bool {
718 // If the iterator failed, stop iterating
719 if it.fail != nil {
720 return false
721 }
722 // If the iterator completed, deliver directly whatever's available
723 if it.done {
724 select {
725 case log := <-it.logs:
726 it.Event = new(WithdrawalDelayerDeposit)
727 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
728 it.fail = err
729 return false
730 }
731 it.Event.Raw = log
732 return true
733
734 default:
735 return false
736 }
737 }
738 // Iterator still in progress, wait for either a data or an error event
739 select {
740 case log := <-it.logs:
741 it.Event = new(WithdrawalDelayerDeposit)
742 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
743 it.fail = err
744 return false
745 }
746 it.Event.Raw = log
747 return true
748
749 case err := <-it.sub.Err():
750 it.done = true
751 it.fail = err
752 return it.Next()
753 }
754}
755
756// Error returns any retrieval or parsing error occurred during filtering.
757func (it *WithdrawalDelayerDepositIterator) Error() error {
758 return it.fail
759}
760
761// Close terminates the iteration process, releasing any pending underlying
762// resources.
763func (it *WithdrawalDelayerDepositIterator) Close() error {
764 it.sub.Unsubscribe()
765 return nil
766}
767
768// WithdrawalDelayerDeposit represents a Deposit event raised by the WithdrawalDelayer contract.
769type WithdrawalDelayerDeposit struct {
770 Owner common.Address
771 Token common.Address
772 Amount *big.Int
773 DepositTimestamp uint64
774 Raw types.Log // Blockchain specific contextual infos
775}
776
777// FilterDeposit is a free log retrieval operation binding the contract event 0x41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd.
778//
779// Solidity: event Deposit(address indexed owner, address indexed token, uint192 amount, uint64 depositTimestamp)
780func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterDeposit(opts *bind.FilterOpts, owner []common.Address, token []common.Address) (*WithdrawalDelayerDepositIterator, 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.FilterLogs(opts, "Deposit", ownerRule, tokenRule)
792 if err != nil {
793 return nil, err
794 }
795 return &WithdrawalDelayerDepositIterator{contract: _WithdrawalDelayer.contract, event: "Deposit", logs: logs, sub: sub}, nil
796}
797
798// WatchDeposit is a free log subscription operation binding the contract event 0x41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd.
799//
800// Solidity: event Deposit(address indexed owner, address indexed token, uint192 amount, uint64 depositTimestamp)
801func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchDeposit(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerDeposit, owner []common.Address, token []common.Address) (event.Subscription, error) {
802
803 var ownerRule []interface{}
804 for _, ownerItem := range owner {
805 ownerRule = append(ownerRule, ownerItem)
806 }
807 var tokenRule []interface{}
808 for _, tokenItem := range token {
809 tokenRule = append(tokenRule, tokenItem)
810 }
811
812 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "Deposit", ownerRule, tokenRule)
813 if err != nil {
814 return nil, err
815 }
816 return event.NewSubscription(func(quit <-chan struct{}) error {
817 defer sub.Unsubscribe()
818 for {
819 select {
820 case log := <-logs:
821 // New log arrived, parse the event and forward to the user
822 event := new(WithdrawalDelayerDeposit)
823 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Deposit", log); err != nil {
824 return err
825 }
826 event.Raw = log
827
828 select {
829 case sink <- event:
830 case err := <-sub.Err():
831 return err
832 case <-quit:
833 return nil
834 }
835 case err := <-sub.Err():
836 return err
837 case <-quit:
838 return nil
839 }
840 }
841 }), nil
842}
843
844// ParseDeposit is a log parse operation binding the contract event 0x41219b99485f78192a5b9b1be28c7d53c3a2bdbe7900ae40c79fae8d9d6108fd.
845//
846// Solidity: event Deposit(address indexed owner, address indexed token, uint192 amount, uint64 depositTimestamp)
847func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseDeposit(log types.Log) (*WithdrawalDelayerDeposit, error) {
848 event := new(WithdrawalDelayerDeposit)
849 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Deposit", log); err != nil {
850 return nil, err
851 }
852 return event, nil
853}
854
855// 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.
856type WithdrawalDelayerEmergencyModeEnabledIterator struct {
857 Event *WithdrawalDelayerEmergencyModeEnabled // Event containing the contract specifics and raw log
858
859 contract *bind.BoundContract // Generic contract to use for unpacking event data
860 event string // Event name to use for unpacking event data
861
862 logs chan types.Log // Log channel receiving the found contract events
863 sub ethereum.Subscription // Subscription for errors, completion and termination
864 done bool // Whether the subscription completed delivering logs
865 fail error // Occurred error to stop iteration
866}
867
868// Next advances the iterator to the subsequent event, returning whether there
869// are any more events found. In case of a retrieval or parsing error, false is
870// returned and Error() can be queried for the exact failure.
871func (it *WithdrawalDelayerEmergencyModeEnabledIterator) Next() bool {
872 // If the iterator failed, stop iterating
873 if it.fail != nil {
874 return false
875 }
876 // If the iterator completed, deliver directly whatever's available
877 if it.done {
878 select {
879 case log := <-it.logs:
880 it.Event = new(WithdrawalDelayerEmergencyModeEnabled)
881 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
882 it.fail = err
883 return false
884 }
885 it.Event.Raw = log
886 return true
887
888 default:
889 return false
890 }
891 }
892 // Iterator still in progress, wait for either a data or an error event
893 select {
894 case log := <-it.logs:
895 it.Event = new(WithdrawalDelayerEmergencyModeEnabled)
896 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
897 it.fail = err
898 return false
899 }
900 it.Event.Raw = log
901 return true
902
903 case err := <-it.sub.Err():
904 it.done = true
905 it.fail = err
906 return it.Next()
907 }
908}
909
910// Error returns any retrieval or parsing error occurred during filtering.
911func (it *WithdrawalDelayerEmergencyModeEnabledIterator) Error() error {
912 return it.fail
913}
914
915// Close terminates the iteration process, releasing any pending underlying
916// resources.
917func (it *WithdrawalDelayerEmergencyModeEnabledIterator) Close() error {
918 it.sub.Unsubscribe()
919 return nil
920}
921
922// WithdrawalDelayerEmergencyModeEnabled represents a EmergencyModeEnabled event raised by the WithdrawalDelayer contract.
923type WithdrawalDelayerEmergencyModeEnabled struct {
924 Raw types.Log // Blockchain specific contextual infos
925}
926
927// FilterEmergencyModeEnabled is a free log retrieval operation binding the contract event 0x2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c5.
928//
929// Solidity: event EmergencyModeEnabled()
930func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterEmergencyModeEnabled(opts *bind.FilterOpts) (*WithdrawalDelayerEmergencyModeEnabledIterator, error) {
931
932 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "EmergencyModeEnabled")
933 if err != nil {
934 return nil, err
935 }
936 return &WithdrawalDelayerEmergencyModeEnabledIterator{contract: _WithdrawalDelayer.contract, event: "EmergencyModeEnabled", logs: logs, sub: sub}, nil
937}
938
939// WatchEmergencyModeEnabled is a free log subscription operation binding the contract event 0x2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c5.
940//
941// Solidity: event EmergencyModeEnabled()
942func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchEmergencyModeEnabled(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerEmergencyModeEnabled) (event.Subscription, error) {
943
944 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "EmergencyModeEnabled")
945 if err != nil {
946 return nil, err
947 }
948 return event.NewSubscription(func(quit <-chan struct{}) error {
949 defer sub.Unsubscribe()
950 for {
951 select {
952 case log := <-logs:
953 // New log arrived, parse the event and forward to the user
954 event := new(WithdrawalDelayerEmergencyModeEnabled)
955 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EmergencyModeEnabled", log); err != nil {
956 return err
957 }
958 event.Raw = log
959
960 select {
961 case sink <- event:
962 case err := <-sub.Err():
963 return err
964 case <-quit:
965 return nil
966 }
967 case err := <-sub.Err():
968 return err
969 case <-quit:
970 return nil
971 }
972 }
973 }), nil
974}
975
976// ParseEmergencyModeEnabled is a log parse operation binding the contract event 0x2064d51aa5a8bd67928c7675e267e05c67ad5adf7c9098d0a602d01f36fda9c5.
977//
978// Solidity: event EmergencyModeEnabled()
979func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseEmergencyModeEnabled(log types.Log) (*WithdrawalDelayerEmergencyModeEnabled, error) {
980 event := new(WithdrawalDelayerEmergencyModeEnabled)
981 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EmergencyModeEnabled", log); err != nil {
982 return nil, err
983 }
984 return event, nil
985}
986
987// 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.
988type WithdrawalDelayerEscapeHatchWithdrawalIterator struct {
989 Event *WithdrawalDelayerEscapeHatchWithdrawal // Event containing the contract specifics and raw log
990
991 contract *bind.BoundContract // Generic contract to use for unpacking event data
992 event string // Event name to use for unpacking event data
993
994 logs chan types.Log // Log channel receiving the found contract events
995 sub ethereum.Subscription // Subscription for errors, completion and termination
996 done bool // Whether the subscription completed delivering logs
997 fail error // Occurred error to stop iteration
998}
999
1000// Next advances the iterator to the subsequent event, returning whether there
1001// are any more events found. In case of a retrieval or parsing error, false is
1002// returned and Error() can be queried for the exact failure.
1003func (it *WithdrawalDelayerEscapeHatchWithdrawalIterator) Next() bool {
1004 // If the iterator failed, stop iterating
1005 if it.fail != nil {
1006 return false
1007 }
1008 // If the iterator completed, deliver directly whatever's available
1009 if it.done {
1010 select {
1011 case log := <-it.logs:
1012 it.Event = new(WithdrawalDelayerEscapeHatchWithdrawal)
1013 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1014 it.fail = err
1015 return false
1016 }
1017 it.Event.Raw = log
1018 return true
1019
1020 default:
1021 return false
1022 }
1023 }
1024 // Iterator still in progress, wait for either a data or an error event
1025 select {
1026 case log := <-it.logs:
1027 it.Event = new(WithdrawalDelayerEscapeHatchWithdrawal)
1028 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1029 it.fail = err
1030 return false
1031 }
1032 it.Event.Raw = log
1033 return true
1034
1035 case err := <-it.sub.Err():
1036 it.done = true
1037 it.fail = err
1038 return it.Next()
1039 }
1040}
1041
1042// Error returns any retrieval or parsing error occurred during filtering.
1043func (it *WithdrawalDelayerEscapeHatchWithdrawalIterator) Error() error {
1044 return it.fail
1045}
1046
1047// Close terminates the iteration process, releasing any pending underlying
1048// resources.
1049func (it *WithdrawalDelayerEscapeHatchWithdrawalIterator) Close() error {
1050 it.sub.Unsubscribe()
1051 return nil
1052}
1053
1054// WithdrawalDelayerEscapeHatchWithdrawal represents a EscapeHatchWithdrawal event raised by the WithdrawalDelayer contract.
1055type WithdrawalDelayerEscapeHatchWithdrawal struct {
1056 Who common.Address
1057 To common.Address
1058 Token common.Address
1059 Amount *big.Int
1060 Raw types.Log // Blockchain specific contextual infos
1061}
1062
1063// FilterEscapeHatchWithdrawal is a free log retrieval operation binding the contract event 0xde200220117ba95c9a6c4a1a13bb06b0b7be90faa85c8fb4576630119f891693.
1064//
1065// Solidity: event EscapeHatchWithdrawal(address indexed who, address indexed to, address indexed token, uint256 amount)
1066func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterEscapeHatchWithdrawal(opts *bind.FilterOpts, who []common.Address, to []common.Address, token []common.Address) (*WithdrawalDelayerEscapeHatchWithdrawalIterator, error) {
1067
1068 var whoRule []interface{}
1069 for _, whoItem := range who {
1070 whoRule = append(whoRule, whoItem)
1071 }
1072 var toRule []interface{}
1073 for _, toItem := range to {
1074 toRule = append(toRule, toItem)
1075 }
1076 var tokenRule []interface{}
1077 for _, tokenItem := range token {
1078 tokenRule = append(tokenRule, tokenItem)
1079 }
1080
1081 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "EscapeHatchWithdrawal", whoRule, toRule, tokenRule)
1082 if err != nil {
1083 return nil, err
1084 }
1085 return &WithdrawalDelayerEscapeHatchWithdrawalIterator{contract: _WithdrawalDelayer.contract, event: "EscapeHatchWithdrawal", logs: logs, sub: sub}, nil
1086}
1087
1088// WatchEscapeHatchWithdrawal is a free log subscription operation binding the contract event 0xde200220117ba95c9a6c4a1a13bb06b0b7be90faa85c8fb4576630119f891693.
1089//
1090// Solidity: event EscapeHatchWithdrawal(address indexed who, address indexed to, address indexed token, uint256 amount)
1091func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchEscapeHatchWithdrawal(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerEscapeHatchWithdrawal, who []common.Address, to []common.Address, token []common.Address) (event.Subscription, error) {
1092
1093 var whoRule []interface{}
1094 for _, whoItem := range who {
1095 whoRule = append(whoRule, whoItem)
1096 }
1097 var toRule []interface{}
1098 for _, toItem := range to {
1099 toRule = append(toRule, toItem)
1100 }
1101 var tokenRule []interface{}
1102 for _, tokenItem := range token {
1103 tokenRule = append(tokenRule, tokenItem)
1104 }
1105
1106 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "EscapeHatchWithdrawal", whoRule, toRule, tokenRule)
1107 if err != nil {
1108 return nil, err
1109 }
1110 return event.NewSubscription(func(quit <-chan struct{}) error {
1111 defer sub.Unsubscribe()
1112 for {
1113 select {
1114 case log := <-logs:
1115 // New log arrived, parse the event and forward to the user
1116 event := new(WithdrawalDelayerEscapeHatchWithdrawal)
1117 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EscapeHatchWithdrawal", log); err != nil {
1118 return err
1119 }
1120 event.Raw = log
1121
1122 select {
1123 case sink <- event:
1124 case err := <-sub.Err():
1125 return err
1126 case <-quit:
1127 return nil
1128 }
1129 case err := <-sub.Err():
1130 return err
1131 case <-quit:
1132 return nil
1133 }
1134 }
1135 }), nil
1136}
1137
1138// ParseEscapeHatchWithdrawal is a log parse operation binding the contract event 0xde200220117ba95c9a6c4a1a13bb06b0b7be90faa85c8fb4576630119f891693.
1139//
1140// Solidity: event EscapeHatchWithdrawal(address indexed who, address indexed to, address indexed token, uint256 amount)
1141func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseEscapeHatchWithdrawal(log types.Log) (*WithdrawalDelayerEscapeHatchWithdrawal, error) {
1142 event := new(WithdrawalDelayerEscapeHatchWithdrawal)
1143 if err := _WithdrawalDelayer.contract.UnpackLog(event, "EscapeHatchWithdrawal", log); err != nil {
1144 return nil, err
1145 }
1146 return event, nil
1147}
1148
1149// 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.
1150type WithdrawalDelayerNewHermezGovernanceDAOAddressIterator struct {
1151 Event *WithdrawalDelayerNewHermezGovernanceDAOAddress // Event containing the contract specifics and raw log
1152
1153 contract *bind.BoundContract // Generic contract to use for unpacking event data
1154 event string // Event name to use for unpacking event data
1155
1156 logs chan types.Log // Log channel receiving the found contract events
1157 sub ethereum.Subscription // Subscription for errors, completion and termination
1158 done bool // Whether the subscription completed delivering logs
1159 fail error // Occurred error to stop iteration
1160}
1161
1162// Next advances the iterator to the subsequent event, returning whether there
1163// are any more events found. In case of a retrieval or parsing error, false is
1164// returned and Error() can be queried for the exact failure.
1165func (it *WithdrawalDelayerNewHermezGovernanceDAOAddressIterator) Next() bool {
1166 // If the iterator failed, stop iterating
1167 if it.fail != nil {
1168 return false
1169 }
1170 // If the iterator completed, deliver directly whatever's available
1171 if it.done {
1172 select {
1173 case log := <-it.logs:
1174 it.Event = new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1175 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1176 it.fail = err
1177 return false
1178 }
1179 it.Event.Raw = log
1180 return true
1181
1182 default:
1183 return false
1184 }
1185 }
1186 // Iterator still in progress, wait for either a data or an error event
1187 select {
1188 case log := <-it.logs:
1189 it.Event = new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1190 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1191 it.fail = err
1192 return false
1193 }
1194 it.Event.Raw = log
1195 return true
1196
1197 case err := <-it.sub.Err():
1198 it.done = true
1199 it.fail = err
1200 return it.Next()
1201 }
1202}
1203
1204// Error returns any retrieval or parsing error occurred during filtering.
1205func (it *WithdrawalDelayerNewHermezGovernanceDAOAddressIterator) Error() error {
1206 return it.fail
1207}
1208
1209// Close terminates the iteration process, releasing any pending underlying
1210// resources.
1211func (it *WithdrawalDelayerNewHermezGovernanceDAOAddressIterator) Close() error {
1212 it.sub.Unsubscribe()
1213 return nil
1214}
1215
1216// WithdrawalDelayerNewHermezGovernanceDAOAddress represents a NewHermezGovernanceDAOAddress event raised by the WithdrawalDelayer contract.
1217type WithdrawalDelayerNewHermezGovernanceDAOAddress struct {
1218 NewHermezGovernanceDAOAddress common.Address
1219 Raw types.Log // Blockchain specific contextual infos
1220}
1221
1222// FilterNewHermezGovernanceDAOAddress is a free log retrieval operation binding the contract event 0x03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1.
1223//
1224// Solidity: event NewHermezGovernanceDAOAddress(address newHermezGovernanceDAOAddress)
1225func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewHermezGovernanceDAOAddress(opts *bind.FilterOpts) (*WithdrawalDelayerNewHermezGovernanceDAOAddressIterator, error) {
1226
1227 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewHermezGovernanceDAOAddress")
1228 if err != nil {
1229 return nil, err
1230 }
1231 return &WithdrawalDelayerNewHermezGovernanceDAOAddressIterator{contract: _WithdrawalDelayer.contract, event: "NewHermezGovernanceDAOAddress", logs: logs, sub: sub}, nil
1232}
1233
1234// WatchNewHermezGovernanceDAOAddress is a free log subscription operation binding the contract event 0x03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1.
1235//
1236// Solidity: event NewHermezGovernanceDAOAddress(address newHermezGovernanceDAOAddress)
1237func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewHermezGovernanceDAOAddress(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewHermezGovernanceDAOAddress) (event.Subscription, error) {
1238
1239 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewHermezGovernanceDAOAddress")
1240 if err != nil {
1241 return nil, err
1242 }
1243 return event.NewSubscription(func(quit <-chan struct{}) error {
1244 defer sub.Unsubscribe()
1245 for {
1246 select {
1247 case log := <-logs:
1248 // New log arrived, parse the event and forward to the user
1249 event := new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1250 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezGovernanceDAOAddress", log); err != nil {
1251 return err
1252 }
1253 event.Raw = log
1254
1255 select {
1256 case sink <- event:
1257 case err := <-sub.Err():
1258 return err
1259 case <-quit:
1260 return nil
1261 }
1262 case err := <-sub.Err():
1263 return err
1264 case <-quit:
1265 return nil
1266 }
1267 }
1268 }), nil
1269}
1270
1271// ParseNewHermezGovernanceDAOAddress is a log parse operation binding the contract event 0x03683be8debd93f8f5ff23dd03419bfcb9b8287a1868b0f130d858f03c3a08a1.
1272//
1273// Solidity: event NewHermezGovernanceDAOAddress(address newHermezGovernanceDAOAddress)
1274func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewHermezGovernanceDAOAddress(log types.Log) (*WithdrawalDelayerNewHermezGovernanceDAOAddress, error) {
1275 event := new(WithdrawalDelayerNewHermezGovernanceDAOAddress)
1276 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezGovernanceDAOAddress", log); err != nil {
1277 return nil, err
1278 }
1279 return event, nil
1280}
1281
1282// 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.
1283type WithdrawalDelayerNewHermezKeeperAddressIterator struct {
1284 Event *WithdrawalDelayerNewHermezKeeperAddress // Event containing the contract specifics and raw log
1285
1286 contract *bind.BoundContract // Generic contract to use for unpacking event data
1287 event string // Event name to use for unpacking event data
1288
1289 logs chan types.Log // Log channel receiving the found contract events
1290 sub ethereum.Subscription // Subscription for errors, completion and termination
1291 done bool // Whether the subscription completed delivering logs
1292 fail error // Occurred error to stop iteration
1293}
1294
1295// Next advances the iterator to the subsequent event, returning whether there
1296// are any more events found. In case of a retrieval or parsing error, false is
1297// returned and Error() can be queried for the exact failure.
1298func (it *WithdrawalDelayerNewHermezKeeperAddressIterator) Next() bool {
1299 // If the iterator failed, stop iterating
1300 if it.fail != nil {
1301 return false
1302 }
1303 // If the iterator completed, deliver directly whatever's available
1304 if it.done {
1305 select {
1306 case log := <-it.logs:
1307 it.Event = new(WithdrawalDelayerNewHermezKeeperAddress)
1308 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1309 it.fail = err
1310 return false
1311 }
1312 it.Event.Raw = log
1313 return true
1314
1315 default:
1316 return false
1317 }
1318 }
1319 // Iterator still in progress, wait for either a data or an error event
1320 select {
1321 case log := <-it.logs:
1322 it.Event = new(WithdrawalDelayerNewHermezKeeperAddress)
1323 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1324 it.fail = err
1325 return false
1326 }
1327 it.Event.Raw = log
1328 return true
1329
1330 case err := <-it.sub.Err():
1331 it.done = true
1332 it.fail = err
1333 return it.Next()
1334 }
1335}
1336
1337// Error returns any retrieval or parsing error occurred during filtering.
1338func (it *WithdrawalDelayerNewHermezKeeperAddressIterator) Error() error {
1339 return it.fail
1340}
1341
1342// Close terminates the iteration process, releasing any pending underlying
1343// resources.
1344func (it *WithdrawalDelayerNewHermezKeeperAddressIterator) Close() error {
1345 it.sub.Unsubscribe()
1346 return nil
1347}
1348
1349// WithdrawalDelayerNewHermezKeeperAddress represents a NewHermezKeeperAddress event raised by the WithdrawalDelayer contract.
1350type WithdrawalDelayerNewHermezKeeperAddress struct {
1351 NewHermezKeeperAddress common.Address
1352 Raw types.Log // Blockchain specific contextual infos
1353}
1354
1355// FilterNewHermezKeeperAddress is a free log retrieval operation binding the contract event 0xc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016.
1356//
1357// Solidity: event NewHermezKeeperAddress(address newHermezKeeperAddress)
1358func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewHermezKeeperAddress(opts *bind.FilterOpts) (*WithdrawalDelayerNewHermezKeeperAddressIterator, error) {
1359
1360 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewHermezKeeperAddress")
1361 if err != nil {
1362 return nil, err
1363 }
1364 return &WithdrawalDelayerNewHermezKeeperAddressIterator{contract: _WithdrawalDelayer.contract, event: "NewHermezKeeperAddress", logs: logs, sub: sub}, nil
1365}
1366
1367// WatchNewHermezKeeperAddress is a free log subscription operation binding the contract event 0xc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016.
1368//
1369// Solidity: event NewHermezKeeperAddress(address newHermezKeeperAddress)
1370func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewHermezKeeperAddress(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewHermezKeeperAddress) (event.Subscription, error) {
1371
1372 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewHermezKeeperAddress")
1373 if err != nil {
1374 return nil, err
1375 }
1376 return event.NewSubscription(func(quit <-chan struct{}) error {
1377 defer sub.Unsubscribe()
1378 for {
1379 select {
1380 case log := <-logs:
1381 // New log arrived, parse the event and forward to the user
1382 event := new(WithdrawalDelayerNewHermezKeeperAddress)
1383 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezKeeperAddress", log); err != nil {
1384 return err
1385 }
1386 event.Raw = log
1387
1388 select {
1389 case sink <- event:
1390 case err := <-sub.Err():
1391 return err
1392 case <-quit:
1393 return nil
1394 }
1395 case err := <-sub.Err():
1396 return err
1397 case <-quit:
1398 return nil
1399 }
1400 }
1401 }), nil
1402}
1403
1404// ParseNewHermezKeeperAddress is a log parse operation binding the contract event 0xc1e9be84fce652abec6a6944f7ec5bbb40de18caa44c285b05a0de7e3ad9d016.
1405//
1406// Solidity: event NewHermezKeeperAddress(address newHermezKeeperAddress)
1407func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewHermezKeeperAddress(log types.Log) (*WithdrawalDelayerNewHermezKeeperAddress, error) {
1408 event := new(WithdrawalDelayerNewHermezKeeperAddress)
1409 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewHermezKeeperAddress", log); err != nil {
1410 return nil, err
1411 }
1412 return event, nil
1413}
1414
1415// 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.
1416type WithdrawalDelayerNewWhiteHackGroupAddressIterator struct {
1417 Event *WithdrawalDelayerNewWhiteHackGroupAddress // Event containing the contract specifics and raw log
1418
1419 contract *bind.BoundContract // Generic contract to use for unpacking event data
1420 event string // Event name to use for unpacking event data
1421
1422 logs chan types.Log // Log channel receiving the found contract events
1423 sub ethereum.Subscription // Subscription for errors, completion and termination
1424 done bool // Whether the subscription completed delivering logs
1425 fail error // Occurred error to stop iteration
1426}
1427
1428// Next advances the iterator to the subsequent event, returning whether there
1429// are any more events found. In case of a retrieval or parsing error, false is
1430// returned and Error() can be queried for the exact failure.
1431func (it *WithdrawalDelayerNewWhiteHackGroupAddressIterator) Next() bool {
1432 // If the iterator failed, stop iterating
1433 if it.fail != nil {
1434 return false
1435 }
1436 // If the iterator completed, deliver directly whatever's available
1437 if it.done {
1438 select {
1439 case log := <-it.logs:
1440 it.Event = new(WithdrawalDelayerNewWhiteHackGroupAddress)
1441 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1442 it.fail = err
1443 return false
1444 }
1445 it.Event.Raw = log
1446 return true
1447
1448 default:
1449 return false
1450 }
1451 }
1452 // Iterator still in progress, wait for either a data or an error event
1453 select {
1454 case log := <-it.logs:
1455 it.Event = new(WithdrawalDelayerNewWhiteHackGroupAddress)
1456 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1457 it.fail = err
1458 return false
1459 }
1460 it.Event.Raw = log
1461 return true
1462
1463 case err := <-it.sub.Err():
1464 it.done = true
1465 it.fail = err
1466 return it.Next()
1467 }
1468}
1469
1470// Error returns any retrieval or parsing error occurred during filtering.
1471func (it *WithdrawalDelayerNewWhiteHackGroupAddressIterator) Error() error {
1472 return it.fail
1473}
1474
1475// Close terminates the iteration process, releasing any pending underlying
1476// resources.
1477func (it *WithdrawalDelayerNewWhiteHackGroupAddressIterator) Close() error {
1478 it.sub.Unsubscribe()
1479 return nil
1480}
1481
1482// WithdrawalDelayerNewWhiteHackGroupAddress represents a NewWhiteHackGroupAddress event raised by the WithdrawalDelayer contract.
1483type WithdrawalDelayerNewWhiteHackGroupAddress struct {
1484 NewWhiteHackGroupAddress common.Address
1485 Raw types.Log // Blockchain specific contextual infos
1486}
1487
1488// FilterNewWhiteHackGroupAddress is a free log retrieval operation binding the contract event 0x284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011.
1489//
1490// Solidity: event NewWhiteHackGroupAddress(address newWhiteHackGroupAddress)
1491func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewWhiteHackGroupAddress(opts *bind.FilterOpts) (*WithdrawalDelayerNewWhiteHackGroupAddressIterator, error) {
1492
1493 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewWhiteHackGroupAddress")
1494 if err != nil {
1495 return nil, err
1496 }
1497 return &WithdrawalDelayerNewWhiteHackGroupAddressIterator{contract: _WithdrawalDelayer.contract, event: "NewWhiteHackGroupAddress", logs: logs, sub: sub}, nil
1498}
1499
1500// WatchNewWhiteHackGroupAddress is a free log subscription operation binding the contract event 0x284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011.
1501//
1502// Solidity: event NewWhiteHackGroupAddress(address newWhiteHackGroupAddress)
1503func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewWhiteHackGroupAddress(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewWhiteHackGroupAddress) (event.Subscription, error) {
1504
1505 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewWhiteHackGroupAddress")
1506 if err != nil {
1507 return nil, err
1508 }
1509 return event.NewSubscription(func(quit <-chan struct{}) error {
1510 defer sub.Unsubscribe()
1511 for {
1512 select {
1513 case log := <-logs:
1514 // New log arrived, parse the event and forward to the user
1515 event := new(WithdrawalDelayerNewWhiteHackGroupAddress)
1516 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWhiteHackGroupAddress", log); err != nil {
1517 return err
1518 }
1519 event.Raw = log
1520
1521 select {
1522 case sink <- event:
1523 case err := <-sub.Err():
1524 return err
1525 case <-quit:
1526 return nil
1527 }
1528 case err := <-sub.Err():
1529 return err
1530 case <-quit:
1531 return nil
1532 }
1533 }
1534 }), nil
1535}
1536
1537// ParseNewWhiteHackGroupAddress is a log parse operation binding the contract event 0x284ca073b8bdde2195ae98779277678773a99d7739e5f0477dc19a03fc689011.
1538//
1539// Solidity: event NewWhiteHackGroupAddress(address newWhiteHackGroupAddress)
1540func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewWhiteHackGroupAddress(log types.Log) (*WithdrawalDelayerNewWhiteHackGroupAddress, error) {
1541 event := new(WithdrawalDelayerNewWhiteHackGroupAddress)
1542 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWhiteHackGroupAddress", log); err != nil {
1543 return nil, err
1544 }
1545 return event, nil
1546}
1547
1548// 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.
1549type WithdrawalDelayerNewWithdrawalDelayIterator struct {
1550 Event *WithdrawalDelayerNewWithdrawalDelay // Event containing the contract specifics and raw log
1551
1552 contract *bind.BoundContract // Generic contract to use for unpacking event data
1553 event string // Event name to use for unpacking event data
1554
1555 logs chan types.Log // Log channel receiving the found contract events
1556 sub ethereum.Subscription // Subscription for errors, completion and termination
1557 done bool // Whether the subscription completed delivering logs
1558 fail error // Occurred error to stop iteration
1559}
1560
1561// Next advances the iterator to the subsequent event, returning whether there
1562// are any more events found. In case of a retrieval or parsing error, false is
1563// returned and Error() can be queried for the exact failure.
1564func (it *WithdrawalDelayerNewWithdrawalDelayIterator) Next() bool {
1565 // If the iterator failed, stop iterating
1566 if it.fail != nil {
1567 return false
1568 }
1569 // If the iterator completed, deliver directly whatever's available
1570 if it.done {
1571 select {
1572 case log := <-it.logs:
1573 it.Event = new(WithdrawalDelayerNewWithdrawalDelay)
1574 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1575 it.fail = err
1576 return false
1577 }
1578 it.Event.Raw = log
1579 return true
1580
1581 default:
1582 return false
1583 }
1584 }
1585 // Iterator still in progress, wait for either a data or an error event
1586 select {
1587 case log := <-it.logs:
1588 it.Event = new(WithdrawalDelayerNewWithdrawalDelay)
1589 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1590 it.fail = err
1591 return false
1592 }
1593 it.Event.Raw = log
1594 return true
1595
1596 case err := <-it.sub.Err():
1597 it.done = true
1598 it.fail = err
1599 return it.Next()
1600 }
1601}
1602
1603// Error returns any retrieval or parsing error occurred during filtering.
1604func (it *WithdrawalDelayerNewWithdrawalDelayIterator) Error() error {
1605 return it.fail
1606}
1607
1608// Close terminates the iteration process, releasing any pending underlying
1609// resources.
1610func (it *WithdrawalDelayerNewWithdrawalDelayIterator) Close() error {
1611 it.sub.Unsubscribe()
1612 return nil
1613}
1614
1615// WithdrawalDelayerNewWithdrawalDelay represents a NewWithdrawalDelay event raised by the WithdrawalDelayer contract.
1616type WithdrawalDelayerNewWithdrawalDelay struct {
1617 WithdrawalDelay uint64
1618 Raw types.Log // Blockchain specific contextual infos
1619}
1620
1621// FilterNewWithdrawalDelay is a free log retrieval operation binding the contract event 0x6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7.
1622//
1623// Solidity: event NewWithdrawalDelay(uint64 withdrawalDelay)
1624func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterNewWithdrawalDelay(opts *bind.FilterOpts) (*WithdrawalDelayerNewWithdrawalDelayIterator, error) {
1625
1626 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "NewWithdrawalDelay")
1627 if err != nil {
1628 return nil, err
1629 }
1630 return &WithdrawalDelayerNewWithdrawalDelayIterator{contract: _WithdrawalDelayer.contract, event: "NewWithdrawalDelay", logs: logs, sub: sub}, nil
1631}
1632
1633// WatchNewWithdrawalDelay is a free log subscription operation binding the contract event 0x6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7.
1634//
1635// Solidity: event NewWithdrawalDelay(uint64 withdrawalDelay)
1636func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchNewWithdrawalDelay(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerNewWithdrawalDelay) (event.Subscription, error) {
1637
1638 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "NewWithdrawalDelay")
1639 if err != nil {
1640 return nil, err
1641 }
1642 return event.NewSubscription(func(quit <-chan struct{}) error {
1643 defer sub.Unsubscribe()
1644 for {
1645 select {
1646 case log := <-logs:
1647 // New log arrived, parse the event and forward to the user
1648 event := new(WithdrawalDelayerNewWithdrawalDelay)
1649 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWithdrawalDelay", log); err != nil {
1650 return err
1651 }
1652 event.Raw = log
1653
1654 select {
1655 case sink <- event:
1656 case err := <-sub.Err():
1657 return err
1658 case <-quit:
1659 return nil
1660 }
1661 case err := <-sub.Err():
1662 return err
1663 case <-quit:
1664 return nil
1665 }
1666 }
1667 }), nil
1668}
1669
1670// ParseNewWithdrawalDelay is a log parse operation binding the contract event 0x6b3670ab51e04a9da086741e5fd1eb36ffaf1d661a15330c528e1f3e0c8722d7.
1671//
1672// Solidity: event NewWithdrawalDelay(uint64 withdrawalDelay)
1673func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseNewWithdrawalDelay(log types.Log) (*WithdrawalDelayerNewWithdrawalDelay, error) {
1674 event := new(WithdrawalDelayerNewWithdrawalDelay)
1675 if err := _WithdrawalDelayer.contract.UnpackLog(event, "NewWithdrawalDelay", log); err != nil {
1676 return nil, err
1677 }
1678 return event, nil
1679}
1680
1681// 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.
1682type WithdrawalDelayerWithdrawIterator struct {
1683 Event *WithdrawalDelayerWithdraw // Event containing the contract specifics and raw log
1684
1685 contract *bind.BoundContract // Generic contract to use for unpacking event data
1686 event string // Event name to use for unpacking event data
1687
1688 logs chan types.Log // Log channel receiving the found contract events
1689 sub ethereum.Subscription // Subscription for errors, completion and termination
1690 done bool // Whether the subscription completed delivering logs
1691 fail error // Occurred error to stop iteration
1692}
1693
1694// Next advances the iterator to the subsequent event, returning whether there
1695// are any more events found. In case of a retrieval or parsing error, false is
1696// returned and Error() can be queried for the exact failure.
1697func (it *WithdrawalDelayerWithdrawIterator) Next() bool {
1698 // If the iterator failed, stop iterating
1699 if it.fail != nil {
1700 return false
1701 }
1702 // If the iterator completed, deliver directly whatever's available
1703 if it.done {
1704 select {
1705 case log := <-it.logs:
1706 it.Event = new(WithdrawalDelayerWithdraw)
1707 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1708 it.fail = err
1709 return false
1710 }
1711 it.Event.Raw = log
1712 return true
1713
1714 default:
1715 return false
1716 }
1717 }
1718 // Iterator still in progress, wait for either a data or an error event
1719 select {
1720 case log := <-it.logs:
1721 it.Event = new(WithdrawalDelayerWithdraw)
1722 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1723 it.fail = err
1724 return false
1725 }
1726 it.Event.Raw = log
1727 return true
1728
1729 case err := <-it.sub.Err():
1730 it.done = true
1731 it.fail = err
1732 return it.Next()
1733 }
1734}
1735
1736// Error returns any retrieval or parsing error occurred during filtering.
1737func (it *WithdrawalDelayerWithdrawIterator) Error() error {
1738 return it.fail
1739}
1740
1741// Close terminates the iteration process, releasing any pending underlying
1742// resources.
1743func (it *WithdrawalDelayerWithdrawIterator) Close() error {
1744 it.sub.Unsubscribe()
1745 return nil
1746}
1747
1748// WithdrawalDelayerWithdraw represents a Withdraw event raised by the WithdrawalDelayer contract.
1749type WithdrawalDelayerWithdraw struct {
1750 Token common.Address
1751 Owner common.Address
1752 Amount *big.Int
1753 Raw types.Log // Blockchain specific contextual infos
1754}
1755
1756// FilterWithdraw is a free log retrieval operation binding the contract event 0x72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf3271.
1757//
1758// Solidity: event Withdraw(address indexed token, address indexed owner, uint192 amount)
1759func (_WithdrawalDelayer *WithdrawalDelayerFilterer) FilterWithdraw(opts *bind.FilterOpts, token []common.Address, owner []common.Address) (*WithdrawalDelayerWithdrawIterator, error) {
1760
1761 var tokenRule []interface{}
1762 for _, tokenItem := range token {
1763 tokenRule = append(tokenRule, tokenItem)
1764 }
1765 var ownerRule []interface{}
1766 for _, ownerItem := range owner {
1767 ownerRule = append(ownerRule, ownerItem)
1768 }
1769
1770 logs, sub, err := _WithdrawalDelayer.contract.FilterLogs(opts, "Withdraw", tokenRule, ownerRule)
1771 if err != nil {
1772 return nil, err
1773 }
1774 return &WithdrawalDelayerWithdrawIterator{contract: _WithdrawalDelayer.contract, event: "Withdraw", logs: logs, sub: sub}, nil
1775}
1776
1777// WatchWithdraw is a free log subscription operation binding the contract event 0x72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf3271.
1778//
1779// Solidity: event Withdraw(address indexed token, address indexed owner, uint192 amount)
1780func (_WithdrawalDelayer *WithdrawalDelayerFilterer) WatchWithdraw(opts *bind.WatchOpts, sink chan<- *WithdrawalDelayerWithdraw, token []common.Address, owner []common.Address) (event.Subscription, error) {
1781
1782 var tokenRule []interface{}
1783 for _, tokenItem := range token {
1784 tokenRule = append(tokenRule, tokenItem)
1785 }
1786 var ownerRule []interface{}
1787 for _, ownerItem := range owner {
1788 ownerRule = append(ownerRule, ownerItem)
1789 }
1790
1791 logs, sub, err := _WithdrawalDelayer.contract.WatchLogs(opts, "Withdraw", tokenRule, ownerRule)
1792 if err != nil {
1793 return nil, err
1794 }
1795 return event.NewSubscription(func(quit <-chan struct{}) error {
1796 defer sub.Unsubscribe()
1797 for {
1798 select {
1799 case log := <-logs:
1800 // New log arrived, parse the event and forward to the user
1801 event := new(WithdrawalDelayerWithdraw)
1802 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Withdraw", log); err != nil {
1803 return err
1804 }
1805 event.Raw = log
1806
1807 select {
1808 case sink <- event:
1809 case err := <-sub.Err():
1810 return err
1811 case <-quit:
1812 return nil
1813 }
1814 case err := <-sub.Err():
1815 return err
1816 case <-quit:
1817 return nil
1818 }
1819 }
1820 }), nil
1821}
1822
1823// ParseWithdraw is a log parse operation binding the contract event 0x72608e45b52a95a12c2ac7f15ff53f92fc9572c9d84b6e6b5d7f0f7826cf3271.
1824//
1825// Solidity: event Withdraw(address indexed token, address indexed owner, uint192 amount)
1826func (_WithdrawalDelayer *WithdrawalDelayerFilterer) ParseWithdraw(log types.Log) (*WithdrawalDelayerWithdraw, error) {
1827 event := new(WithdrawalDelayerWithdraw)
1828 if err := _WithdrawalDelayer.contract.UnpackLog(event, "Withdraw", log); err != nil {
1829 return nil, err
1830 }
1831 return event, nil
1832}