hermez-node/eth/contracts/hermez/Hermez.go
eth/contracts/hermez/Hermez.goRaw
1// Code generated - DO NOT EDIT.
2// This file is a generated binding and any manual changes will be lost.
3
4package Hermez
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// HermezABI is the input ABI used to generate the binding from.
30const HermezABI = "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"}],\"name\":\"AddToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"batchNum\",\"type\":\"uint256\"}],\"name\":\"ForgeBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"l1UserTx\",\"type\":\"bytes\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"queueIndex\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"transactionIndex\",\"type\":\"uint256\"}],\"name\":\"L1UserTxEvent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newFeeAddToken\",\"type\":\"uint256\"}],\"name\":\"UpdateFeeAddToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newForgeL1L2BatchTimeout\",\"type\":\"uint256\"}],\"name\":\"UpdateForgeL1L2BatchTimeout\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"idx\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"numExitRoot\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"instantWithdraw\",\"type\":\"bool\"}],\"name\":\"WithdrawEvent\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"EXIT_IDX\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"L1_COORDINATOR_BYTES\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"L1_USER_BYTES\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"L2_BYTES\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LAST_IDX\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_AMOUNT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_L1_TX\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_L1_USER_TX\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_LOAD_AMOUNT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_TOKENS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_WITHDRAWAL_DELAY\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NO_LIMIT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NUM_BUCKETS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RESERVED_IDX\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RFIELD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenAddress\",\"type\":\"address\"}],\"name\":\"addToken\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"buckets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ceilUSD\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockStamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"withdrawals\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockWithdrawalRate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxWithdrawals\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"circuitVerifiers\",\"outputs\":[{\"internalType\":\"contractVerifierInterface\",\"name\":\"verifierInt\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"maxTx\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"babyPubKey\",\"type\":\"uint256\"},{\"internalType\":\"uint16\",\"name\":\"loadAmountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"}],\"name\":\"createAccountDeposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"accountCreationAuthSig\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"babyPubKey\",\"type\":\"uint256\"},{\"internalType\":\"uint16\",\"name\":\"loadAmountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"}],\"name\":\"createAccountDepositFromRelayer\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"babyPubKey\",\"type\":\"uint256\"},{\"internalType\":\"uint16\",\"name\":\"loadAmountF\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"amountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"toIdx\",\"type\":\"uint32\"}],\"name\":\"createAccountDepositTransfer\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentIdx\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"fromIdx\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"loadAmountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"fromIdx\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"loadAmountF\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"amountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"toIdx\",\"type\":\"uint32\"}],\"name\":\"depositTransfer\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"exitNullifierMap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"exitRoots\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeAddToken\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"fromIdx\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"amountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"}],\"name\":\"forceExit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"fromIdx\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"amountF\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"toIdx\",\"type\":\"uint32\"}],\"name\":\"forceTransfer\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint32\",\"name\":\"newLastIdx\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"newStRoot\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"newExitRoot\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"encodedL1CoordinatorTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"l2TxsData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"feeIdxCoordinator\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"verifierIdx\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"l1Batch\",\"type\":\"bool\"}],\"name\":\"forgeBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"forgeL1L2BatchTimeout\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBatch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governanceAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hermezAuctionContract\",\"outputs\":[{\"internalType\":\"contractConsensusInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_verifiers\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_maxTxVerifiers\",\"type\":\"uint256[]\"},{\"internalType\":\"address\",\"name\":\"_tokenHEZ\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_governanceAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_safetyAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_hermezAuctionContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawDelayerContract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_poseidon2Elements\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_poseidon3Elements\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_poseidon4Elements\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_feeAddToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_forgeL1L2BatchTimeout\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"_withdrawalDelay\",\"type\":\"uint64\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"instantWithdrawalViewer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastL1L2Batch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"mapL1TxQueue\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextForgedQueue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextL1FillingQueue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"safeMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"safetyAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stateRoot\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"tokenExchange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tokenHEZ\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"tokenList\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"tokenMap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[4][5]\",\"name\":\"arrayBuckets\",\"type\":\"uint256[4][5]\"}],\"name\":\"updateBucketsParameters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newFeeAddToken\",\"type\":\"uint256\"}],\"name\":\"updateFeeAddToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newForgeL1L2BatchTimeout\",\"type\":\"uint256\"}],\"name\":\"updateForgeL1L2BatchTimeout\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"addressArray\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"valueArray\",\"type\":\"uint256[]\"}],\"name\":\"updateTokenExchange\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newWithdrawalDelay\",\"type\":\"uint64\"}],\"name\":\"updateWithdrawalDelay\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"tokenID\",\"type\":\"uint32\"},{\"internalType\":\"uint192\",\"name\":\"balance\",\"type\":\"uint192\"},{\"internalType\":\"uint256\",\"name\":\"babyPubKey\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"numExitRoot\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"siblings\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"idx\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"instantWithdraw\",\"type\":\"bool\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawDelayerContract\",\"outputs\":[{\"internalType\":\"contractWithdrawalDelayerInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawalDelay\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
31
32// HermezBin is the compiled bytecode used for deploying new contracts.
33var HermezBin = "0x608060405234801561001057600080fd5b50614950806100206000396000f3fe60806040526004361061036a5760003560e01c80639588eca2116101c6578063c8464ed1116100f7578063e56e27ae11610095578063ef4a5c4a1161006f578063ef4a5c4a146110af578063f47c84c5146110e3578063ffd3dcf9146110f8578063fff699701461110d5761036a565b8063e56e27ae14610ed1578063e617115014610ee6578063ee67f32e14610f1d5761036a565b8063cc77828d116100d1578063cc77828d14610dc8578063d40dc87014610ddd578063d48bfca714610df2578063d7d207c014610e185761036a565b8063c8464ed114610b35578063c970ea8e14610c83578063cadedd8214610c985761036a565b8063a60034fb11610164578063ac3851cd1161013e578063ac3851cd14610a1a578063bded9bb814610a2f578063be8e25db14610a44578063c56ca84e14610b205761036a565b8063a60034fb146109be578063a7ab6961146109d3578063abe3219c14610a055761036a565b80639ead7222116101a05780639ead72221461091d578063a238f9df14610947578063a32758381461095c578063a4b457ca146109715761036a565b80639588eca21461086a5780639612518a1461087f5780639b51fb0d146108c85761036a565b80634d09f3fd116102a05780635f59f58e1161023e578063795053d311610218578063795053d31461081657806379a135e31461082b57806384ef9ed4146108405780638e65ab4f146108555761036a565b80635f59f58e1461073757806368e95e53146107705780636d78e572146108015761036a565b806351ff68b01161027a57806351ff68b01461069a578063568bc1c5146106af57806358de75c4146106f45780635bfac41f146107095761036a565b80634d09f3fd146106465780634fc515591461065b57806350263f8c146106705761036a565b806330501fcb1161030d5780633787f591116102e75780633787f5911461052b57806339cd0581146105685780633ec0b07c1461059257806345d1c25b146106315761036a565b806330501fcb14610495578063314e5eda146104ca578063363e2a22146104f45761036a565b80631b0a8223116103495780631b0a8223146103fc57806320f6a08f1461042d5780632bd83626146104425780632bf41a2f146104575761036a565b80624aca6e1461036f5780630dd94b96146103b45780630ee8e52b146103e7575b600080fd5b34801561037b57600080fd5b506103a26004803603602081101561039257600080fd5b50356001600160a01b0316611122565b60408051918252519081900360200190f35b3480156103c057600080fd5b506103a2600480360360208110156103d757600080fd5b50356001600160a01b0316611134565b3480156103f357600080fd5b506103a2611146565b34801561040857600080fd5b5061041161114c565b604080516001600160a01b039092168252519081900360200190f35b34801561043957600080fd5b506103a261115b565b34801561044e57600080fd5b50610411611163565b34801561046357600080fd5b506104816004803603602081101561047a57600080fd5b5035611172565b604080519115158252519081900360200190f35b6104c8600480360360608110156104ab57600080fd5b50803590602081013561ffff16906040013563ffffffff16611187565b005b3480156104d657600080fd5b506104c8600480360360208110156104ed57600080fd5b5035611318565b6104c86004803603606081101561050a57600080fd5b5063ffffffff813581169161ffff60208201351691604090910135166113ab565b6104c86004803603608081101561054157600080fd5b5063ffffffff813581169161ffff602082013516916040820135811691606001351661157f565b34801561057457600080fd5b506104c86004803603602081101561058b57600080fd5b503561177f565b34801561059e57600080fd5b506105bc600480360360208110156105b557600080fd5b5035611852565b6040805160208082528351818301528351919283929083019185019080838360005b838110156105f65781810151838201526020016105de565b50505050905090810190601f1680156106235780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561063d57600080fd5b506103a26118ed565b34801561065257600080fd5b506103a26118f3565b34801561066757600080fd5b506103a26118f8565b34801561067c57600080fd5b506103a26004803603602081101561069357600080fd5b50356118fd565b3480156106a657600080fd5b506103a261191b565b6104c8600480360360a08110156106c557600080fd5b5080359061ffff602082013581169160408101359091169063ffffffff60608201358116916080013516611920565b34801561070057600080fd5b506103a2611b8d565b34801561071557600080fd5b5061071e611bb1565b6040805163ffffffff9092168252519081900360200190f35b34801561074357600080fd5b506104816004803603604081101561075a57600080fd5b506001600160a01b038135169060200135611bbd565b34801561077c57600080fd5b506104c8600480360361028081101561079457600080fd5b6040805160a0810190915290820191906102808201908260056000835b828210156107f257604080516080818101909252908084028601906004908390839080828437600092019190915250505081526001909101906020016107b1565b50929550611c4f945050505050565b34801561080d57600080fd5b506103a2611e23565b34801561082257600080fd5b50610411611e28565b34801561083757600080fd5b50610411611e37565b34801561084c57600080fd5b506103a2611e46565b34801561086157600080fd5b5061071e611e4c565b34801561087657600080fd5b506103a2611e54565b6104c8600480360360a081101561089557600080fd5b5063ffffffff813581169161ffff6020820135811692604083013590911691606081013582169160809091013516611e5a565b3480156108d457600080fd5b506108f2600480360360208110156108eb57600080fd5b50356120f8565b6040805195865260208601949094528484019290925260608401526080830152519081900360a00190f35b34801561092957600080fd5b506104116004803603602081101561094057600080fd5b503561212a565b34801561095357600080fd5b506103a2612151565b34801561096857600080fd5b506103a2612158565b34801561097d57600080fd5b5061099b6004803603602081101561099457600080fd5b503561215e565b604080516001600160a01b03909316835260208301919091528051918290030190f35b3480156109ca57600080fd5b506103a2612193565b3480156109df57600080fd5b506109e8612199565b6040805167ffffffffffffffff9092168252519081900360200190f35b348015610a1157600080fd5b506104c86121b0565b348015610a2657600080fd5b506103a261232f565b348015610a3b57600080fd5b506103a2612335565b348015610a5057600080fd5b506104c8600480360360e0811015610a6757600080fd5b63ffffffff823516916001600160c01b036020820135169160408201359160608101359181019060a081016080820135600160201b811115610aa857600080fd5b820183602082011115610aba57600080fd5b803590602001918460208302840111600160201b83111715610adb57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295505082359350505060200135151561233b565b348015610b2c57600080fd5b506103a2612819565b348015610b4157600080fd5b506104c86004803603610200811015610b5957600080fd5b604082019060c083019063ffffffff610100850135169061012085013590610140860135908601866101808101610160820135600160201b811115610b9d57600080fd5b820183602082011115610baf57600080fd5b803590602001918460018302840111600160201b83111715610bd057600080fd5b919390929091602081019035600160201b811115610bed57600080fd5b820183602082011115610bff57600080fd5b803590602001918460018302840111600160201b83111715610c2057600080fd5b919390929091602081019035600160201b811115610c3d57600080fd5b820183602082011115610c4f57600080fd5b803590602001918460018302840111600160201b83111715610c7057600080fd5b919350915080359060200135151561281e565b348015610c8f57600080fd5b506103a2612aeb565b348015610ca457600080fd5b506104c860048036036040811015610cbb57600080fd5b810190602081018135600160201b811115610cd557600080fd5b820183602082011115610ce757600080fd5b803590602001918460208302840111600160201b83111715610d0857600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b811115610d5757600080fd5b820183602082011115610d6957600080fd5b803590602001918460208302840111600160201b83111715610d8a57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550612af1945050505050565b348015610dd457600080fd5b506103a2612bbc565b348015610de957600080fd5b506103a2612bc2565b6104c860048036036020811015610e0857600080fd5b50356001600160a01b0316612bca565b6104c860048036036080811015610e2e57600080fd5b810190602081018135600160201b811115610e4857600080fd5b820183602082011115610e5a57600080fd5b803590602001918460018302840111600160201b83111715610e7b57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050823593505050602081013561ffff16906040013563ffffffff16612dd3565b348015610edd57600080fd5b50610411612f7f565b6104c860048036036060811015610efc57600080fd5b5063ffffffff813581169161ffff6020820135169160409091013516612f8e565b348015610f2957600080fd5b506104c860048036036101a0811015610f4157600080fd5b810190602081018135600160201b811115610f5b57600080fd5b820183602082011115610f6d57600080fd5b803590602001918460208302840111600160201b83111715610f8e57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b811115610fdd57600080fd5b820183602082011115610fef57600080fd5b803590602001918460208302840111600160201b8311171561101057600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550506001600160a01b038335811694506020840135811693604081013582169350606081013582169250608081013582169160a082013581169160c081013582169160e08201351690610100810135906101208101359067ffffffffffffffff6101409091013516613124565b3480156110bb57600080fd5b506104c8600480360360208110156110d257600080fd5b503567ffffffffffffffff16613288565b3480156110ef57600080fd5b506103a2611e4c565b34801561110457600080fd5b5061071e613370565b34801561111957600080fd5b5061071e613375565b60586020526000908152604090205481565b60526020526000908152604090205481565b60605481565b6051546001600160a01b031681565b600160801b81565b605b546001600160a01b031681565b60566020526000908152604090205460ff1681565b60006111928361337a565b9050600160801b81106111da576040805162461bcd60e51b815260206004820152601e60248201526000805160206148fb833981519152604482015290519081900360640190fd5b63ffffffff8216611234573481101561122f576040805162461bcd60e51b8152602060048201526012602482015271195d1a195c880f081b1bd859105b5bdd5b9d60721b604482015290519081900360640190fd5b6112a5565b61126660578363ffffffff168154811061124a57fe5b6000918252602090912001546001600160a01b031682306133c0565b6112a5576040805162461bcd60e51b815260206004820152601e602482015260008051602061486f833981519152604482015290519081900360640190fd5b6040805133606090811b6020830152603482018790526000605483018190526001600160f01b031960f088901b166058840152605a83018190526001600160e01b031960e087901b16605c840152908201528151604481830301815260649091019091526113129061344d565b50505050565b604f546001600160a01b03163314611370576040805162461bcd60e51b81526020600482015260166024820152754f6e6c7920676f766572616e6365206164647265737360501b604482015290519081900360640190fd5b605a8190556040805182815290517fd1c873cd16013f0dc5f37992c0d12794389698512895ec036a568e393b46e3c19181900360200190a150565b60006113b68361337a565b9050600160801b81106113fe576040805162461bcd60e51b815260206004820152601e60248201526000805160206148fb833981519152604482015290519081900360640190fd5b60ff63ffffffff8516118015611420575060615463ffffffff90811690851611155b611463576040805162461bcd60e51b815260206004820152600f60248201526e0d2dcecc2d8d2c840cce4deda92c8f608b1b604482015290519081900360640190fd5b63ffffffff82166114bd57348110156114b8576040805162461bcd60e51b8152602060048201526012602482015271195d1a195c880f081b1bd859105b5bdd5b9d60721b604482015290519081900360640190fd5b611512565b6114d360578363ffffffff168154811061124a57fe5b611512576040805162461bcd60e51b815260206004820152601e602482015260008051602061486f833981519152604482015290519081900360640190fd5b60408051600060208201819052603482018190526001600160e01b031960e088811b821660548501526001600160f01b031960f089901b166058850152605a840183905286901b16605c83015260608201528151604481830301815260649091019091526113129061344d565b60575463ffffffff8316106115db576040805162461bcd60e51b815260206004820152601d60248201527f746f6b656e20686173206e6f74206265656e2072656769737465726564000000604482015290519081900360640190fd5b60006115e68461337a565b9050600160c01b8110611639576040805162461bcd60e51b81526020600482015260166024820152750c2dadeeadce840d8c2e4cecae440e8d0c2dc40dac2f60531b604482015290519081900360640190fd5b60ff63ffffffff861611801561165b575060615463ffffffff90811690861611155b61169e576040805162461bcd60e51b815260206004820152600f60248201526e0d2dcecc2d8d2c840cce4deda92c8f608b1b604482015290519081900360640190fd5b60ff63ffffffff83161180156116c0575060615463ffffffff90811690831611155b611701576040805162461bcd60e51b815260206004820152600d60248201526c0d2dcecc2d8d2c840e8de92c8f609b1b604482015290519081900360640190fd5b6040805133606090811b60208301526000603483018190526001600160e01b031960e08a811b8216605486015260588501929092526001600160f01b031960f08a901b16605a85015287821b8116605c8501529086901b16908201528151604481830301815260649091019091526117789061344d565b5050505050565b604f546001600160a01b031633146117d7576040805162461bcd60e51b81526020600482015260166024820152754f6e6c7920676f766572616e6365206164647265737360501b604482015290519081900360640190fd5b60f08111156118175760405162461bcd60e51b815260040180806020018281038252602a81526020018061488f602a913960400191505060405180910390fd5b605d8190556040805182815290517f6df2dd186033d1083891be7a27ab27fd480094118e909a1780f9c2a2c49a7aa09181900360200190a150565b605c6020908152600091825260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156118e55780601f106118ba576101008083540402835291602001916118e5565b820191906000526020600020905b8154815290600101906020018083116118c857829003601f168201915b505050505081565b61010081565b606581565b600b81565b6055818154811061190a57fe5b600091825260209091200154905081565b608081565b600061192b8561337a565b9050600160801b8110611985576040805162461bcd60e51b815260206004820152601e60248201527f6465706f73697420616d6f756e74206c6172676572207468616e204d61780000604482015290519081900360640190fd5b60006119908561337a565b9050600160c01b81106119e3576040805162461bcd60e51b81526020600482015260166024820152750c2dadeeadce840d8c2e4cecae440e8d0c2dc40dac2f60531b604482015290519081900360640190fd5b60ff63ffffffff8416118015611a05575060615463ffffffff90811690841611155b611a46576040805162461bcd60e51b815260206004820152600d60248201526c0d2dcecc2d8d2c840e8de92c8f609b1b604482015290519081900360640190fd5b63ffffffff8416611aa05734821015611a9b576040805162461bcd60e51b8152602060048201526012602482015271195d1a195c880f081b1bd859105b5bdd5b9d60721b604482015290519081900360640190fd5b611b11565b611ad260578563ffffffff1681548110611ab657fe5b6000918252602090912001546001600160a01b031683306133c0565b611b11576040805162461bcd60e51b815260206004820152601e602482015260008051602061486f833981519152604482015290519081900360640190fd5b6040805133606090811b6020830152603482018a9052600060548301526001600160f01b031960f08a811b8216605885015289901b16605a8301526001600160e01b031960e088811b8216605c85015287901b1690820152815160448183030181526064909101909152611b849061344d565b50505050505050565b7f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000181565b60615463ffffffff1681565b600080611bca848461361d565b90506000611bd78261366d565b905061ffff811415611bee57600192505050611c49565b600060368260058110611bfd57fe5b600502019050600081600201541115611c1c5760019350505050611c49565b60008160010154430390508160030154811015611c40576000945050505050611c49565b60019450505050505b92915050565b604f546001600160a01b03163314611ca7576040805162461bcd60e51b81526020600482015260166024820152754f6e6c7920676f766572616e6365206164647265737360501b604482015290519081900360640190fd5b60005b60058163ffffffff161015611e1f57818163ffffffff1660058110611ccb57fe5b602002015160016020020151828263ffffffff1660058110611ce957fe5b6020020151606001511015611d2f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614813602e913960400191505060405180910390fd5b6040518060a00160405280838363ffffffff1660058110611d4c57fe5b6020020151600060200201518152602001438152602001838363ffffffff1660058110611d7557fe5b6020020151600160200201518152602001838363ffffffff1660058110611d9857fe5b6020020151600260200201518152602001838363ffffffff1660058110611dbb57fe5b6020020151606001519052603663ffffffff831660058110611dd957fe5b6005020160008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050508080600101915050611caa565b5050565b604481565b604f546001600160a01b031681565b6059546001600160a01b031681565b605e5481565b63ffffffff81565b60545481565b6000611e658561337a565b9050600160801b8110611ead576040805162461bcd60e51b815260206004820152601e60248201526000805160206148fb833981519152604482015290519081900360640190fd5b6000611eb88561337a565b9050600160c01b8110611f0b576040805162461bcd60e51b81526020600482015260166024820152750c2dadeeadce840d8c2e4cecae440e8d0c2dc40dac2f60531b604482015290519081900360640190fd5b60ff63ffffffff8816118015611f2d575060615463ffffffff90811690881611155b611f70576040805162461bcd60e51b815260206004820152600f60248201526e0d2dcecc2d8d2c840cce4deda92c8f608b1b604482015290519081900360640190fd5b60ff63ffffffff8416118015611f92575060615463ffffffff90811690841611155b611fd3576040805162461bcd60e51b815260206004820152600d60248201526c0d2dcecc2d8d2c840e8de92c8f609b1b604482015290519081900360640190fd5b63ffffffff841661202d5734821015612028576040805162461bcd60e51b8152602060048201526012602482015271195d1a195c880f081b1bd859105b5bdd5b9d60721b604482015290519081900360640190fd5b612082565b61204360578563ffffffff1681548110611ab657fe5b612082576040805162461bcd60e51b815260206004820152601e602482015260008051602061486f833981519152604482015290519081900360640190fd5b6040805133606090811b6020830152600060348301526001600160e01b031960e08b811b821660548501526001600160f01b031960f08c811b821660588701528b901b16605a85015288811b8216605c85015287901b1690820152815160448183030181526064909101909152611b849061344d565b6036816005811061210557fe5b6005020180546001820154600283015460038401546004909401549294509092909185565b6057818154811061213757fe5b6000918252602090912001546001600160a01b0316905081565b6212750081565b605d5481565b6053818154811061216b57fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b61ffff81565b605054600160a01b900467ffffffffffffffff1681565b6050546001600160a01b03163314806121d35750604f546001600160a01b031633145b612224576040805162461bcd60e51b815260206004820152601a60248201527f4f6e6c79207361666520626f74206f7220676f766572616e6365000000000000604482015290519081900360640190fd5b60005b60058163ffffffff1610156122bb576040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525060368263ffffffff166005811061227557fe5b6005020160008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050508080600101915050612227565b5060515460505460408051630e670af560e01b8152600160a01b90920467ffffffffffffffff166004830152516001600160a01b0390921691630e670af59160248082019260009290919082900301818387803b15801561231b57600080fd5b505af1158015611312573d6000803e3d6000fd5b60555490565b605a5481565b80156123d15761237b60578863ffffffff168154811061235757fe5b6000918252602090912001546001600160a01b03166001600160c01b038816613704565b15156001146123d1576040805162461bcd60e51b815260206004820152601860248201527f6d7573742062652064656c617965642077697468647261770000000000000000604482015290519081900360640190fd5b60606123ea886000896001600160c01b0316893361380d565b905060006123f78261391a565b905060006055600188038154811061240b57fe5b600091825260209182902001546040805160038082526080820190925291935060609282018380368337019050509050828160008151811061244957fe5b602002602001018181525050600188038160018151811061246657fe5b602002602001018181525050818160028151811061248057fe5b6020026020010181815250506000612497826139cf565b60008181526056602052604090205490915060ff16156124fe576040805162461bcd60e51b815260206004820152601e60248201527f776974686472617720686173206265656e20616c726561647920646f6e650000604482015290519081900360640190fd5b61250a83898987613a2c565b1515600114612550576040805162461bcd60e51b815260206004820152600d60248201526c34b73b30b634b210383937b7b360991b604482015290519081900360640190fd5b6000818152605660205260409020805460ff19166001179055851561263c5763ffffffff8c166125b55760405133906001600160c01b038d1680156108fc02916000818181858888f193505050501580156125af573d6000803e3d6000fd5b50612637565b6125f060578d63ffffffff16815481106125cb57fe5b6000918252602090912001546001600160a01b0316336001600160c01b038e16613ab3565b612637576040805162461bcd60e51b81526020600482015260136024820152724661696c20455243323020776974686472617760681b604482015290519081900360640190fd5b6127da565b63ffffffff8c166126c8576051546040805163cfc0b64160e01b81523360048201526000602482018190526001600160c01b038f166044830181905292516001600160a01b039094169363cfc0b6419392606480820193929182900301818588803b1580156126aa57600080fd5b505af11580156126be573d6000803e3d6000fd5b50505050506127da565b61270a60578d63ffffffff16815481106126de57fe5b6000918252602090912001546051546001600160a01b03918216916001600160c01b038f169116613b0c565b50605160009054906101000a90046001600160a01b03166001600160a01b031663cfc0b6413360578f63ffffffff168154811061274357fe5b9060005260206000200160009054906101000a90046001600160a01b03168e6040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b03168152602001826001600160c01b031681526020019350505050600060405180830381600087803b1580156127c157600080fd5b505af11580156127d5573d6000803e3d6000fd5b505050505b85151589887f1b9bced8515592200c493bd85d3b9e8508df7ea146ee075c252f034d226fdac660405160405180910390a4505050505050505050505050565b600581565b605b546040805163041d8fb560e51b815233600482015243602482015290516001600160a01b03909216916383b1f6a091604480820192602092909190829003018186803b15801561286f57600080fd5b505afa158015612883573d6000803e3d6000fd5b505050506040513d602081101561289957600080fd5b505115156001146128e2576040805162461bcd60e51b815260206004820152600e60248201526d1a5b98dbdc9c9958dd081cdb1bdd60921b604482015290519081900360640190fd5b806129415743605d54605e540111612941576040805162461bcd60e51b815260206004820152601d60248201527f74696d656f75742c206d75737420666f726765204c314c324261746368000000604482015290519081900360640190fd5b60006129d08c8c8c8c8c8c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508d9150613b659050565b90506129df8f8f8f8487613e0d565b60548b9055605580546001810182556000919091527f71beda120aafdd3bb922b360a066d10b7ce81d7ac2ad9874daac46e2282f6b45018a90556061805463ffffffff191663ffffffff8e161790558115612a405743605e55612a40613f4d565b605b54604080516309cb4a2f60e31b815233600482015290516001600160a01b0390921691634e5a51789160248082019260009290919082900301818387803b158015612a8c57600080fd5b505af1158015612aa0573d6000803e3d6000fd5b505060555460408051918252517f9b346777a734ffed277bddd87dee3490eb9dcc5378c095eac5af3e0f5da04f419350908190036020019150a1505050505050505050505050505050565b605f5481565b604f546001600160a01b03163314612b49576040805162461bcd60e51b81526020600482015260166024820152754f6e6c7920676f766572616e6365206164647265737360501b604482015290519081900360640190fd5b60005b82518163ffffffff161015612bb757818163ffffffff1681518110612b6d57fe5b602002602001015160526000858463ffffffff1681518110612b8b57fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055600101612b4c565b505050565b60575490565b600160c01b81565b60575463ffffffff811115612c1b576040805162461bcd60e51b81526020600482015260126024820152711d1bdad95b881b1a5cdd081a5cc8199d5b1b60721b604482015290519081900360640190fd5b6001600160a01b038216612c6b576040805162461bcd60e51b8152602060048201526012602482015271063616e2774206265206164647265737320360741b604482015290519081900360640190fd5b6001600160a01b03821660009081526058602052604090205415612cd6576040805162461bcd60e51b815260206004820152601b60248201527f746f6b656e206164647265737320616c72656164792061646465640000000000604482015290519081900360640190fd5b605954605a54604f54612cf6926001600160a01b039081169291166133c0565b612d35576040805162461bcd60e51b815260206004820152601e602482015260008051602061486f833981519152604482015290519081900360640190fd5b60578054600181019091557fe8e5595d268aaa85b36c3557e9d96c14a4fffaee9f45bcae0c407968a71096300180546001600160a01b0319166001600160a01b038416908117909155600081815260586020908152604091829020849055815192835263ffffffff84169083015280517fcb73d161edb7cd4fb1d92fedfd2555384fd997fd44ab507656f8c81e15747dde9281900390910190a15050565b6000612dde8361337a565b9050600160801b8110612e26576040805162461bcd60e51b815260206004820152601e60248201526000805160206148fb833981519152604482015290519081900360640190fd5b63ffffffff8216612e805734811015612e7b576040805162461bcd60e51b8152602060048201526012602482015271195d1a195c880f081b1bd859105b5bdd5b9d60721b604482015290519081900360640190fd5b612ed5565b612e9660578363ffffffff168154811061124a57fe5b612ed5576040805162461bcd60e51b815260206004820152601e602482015260008051602061486f833981519152604482015290519081900360640190fd5b602085015160408601516060870151600090811a90612ef688858585613f87565b60408051606083811b6bffffffffffffffffffffffff19166020830152603482018c905260006054830181905260f08c901b6001600160f01b0319166058840152605a830181905260e08b901b6001600160e01b031916605c84015290820152815180820360440181526064909101909152909150612f749061344d565b505050505050505050565b6050546001600160a01b031681565b60575463ffffffff821610612fea576040805162461bcd60e51b815260206004820152601d60248201527f746f6b656e20686173206e6f74206265656e2072656769737465726564000000604482015290519081900360640190fd5b6000612ff58361337a565b9050600160c01b8110613048576040805162461bcd60e51b81526020600482015260166024820152750c2dadeeadce840d8c2e4cecae440e8d0c2dc40dac2f60531b604482015290519081900360640190fd5b60ff63ffffffff851611801561306a575060615463ffffffff90811690851611155b6130ad576040805162461bcd60e51b815260206004820152600f60248201526e0d2dcecc2d8d2c840cce4deda92c8f608b1b604482015290519081900360640190fd5b6040805133606090811b60208301526000603483018190526001600160e01b031960e089811b8216605486015260588501929092526001600160f01b031960f089901b16605a8501529086901b16605c830152600160e01b908201528151604481830301815260649091019091526113129061344d565b600054610100900460ff168061313d575061313d614055565b8061314b575060005460ff16155b6131865760405162461bcd60e51b815260040180806020018281038252602e815260200180614841602e913960400191505060405180910390fd5b600054610100900460ff161580156131b1576000805460ff1961ff0019909116610100171660011790555b6131bb8e8e61405b565b605b80546001600160a01b03808c166001600160a01b031992831617909255605a869055605d8590556061805463ffffffff191660ff17905560598054928f16929091169190911790556000605e55600160605561321a878787614101565b6132268b8b848b6141e2565b605780546001810182556000919091527fe8e5595d268aaa85b36c3557e9d96c14a4fffaee9f45bcae0c407968a71096300180546001600160a01b03191690558015613278576000805461ff00191690555b5050505050505050505050505050565b604f546001600160a01b031633146132e0576040805162461bcd60e51b81526020600482015260166024820152754f6e6c7920676f766572616e6365206164647265737360501b604482015290519081900360640190fd5b621275008167ffffffffffffffff161115613342576040805162461bcd60e51b815260206004820152601c60248201527f45786365656473204d41585f5749544844524157414c5f44454c415900000000604482015290519081900360640190fd5b6050805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b600181565b60ff81565b60006103ff8216601f600b84901c166001600a85811c8216919083900a9081850290831480156133a957508315155b156133b45760028204015b9450505050505b919050565b604080516323b872dd60e01b81523360048201526001600160a01b0383811660248301526044820185905291516000928616916323b872dd91606480830192602092919082900301818787803b15801561341957600080fd5b505af115801561342d573d6000803e3d6000fd5b505050506040513d602081101561344357600080fd5b5051949350505050565b605c600060605481526020019081526020016000208160405160200180838054600181600116156101000203166002900480156134c15780601f1061349f5761010080835404028352918201916134c1565b820191906000526020600020905b8154815290600101906020018083116134ad575b5050825160208401908083835b602083106134ed5780518252601f1990920191602091820191016134ce565b51815160209384036101000a60001901801990921691161790526040805192909401828103601f1901835284526060546000908152605c825293909320815161353f97509095509201925061473f9050565b506060546000908152605c602052604081205460449060026000196101006001841615020190911604049050806060547f44ed7960659190edb7acf74ac1bd6c7e8803bfa3aebe02c4599a0770fac3f884846040518080602001828103825283818151815260200191508051906020019080838360005b838110156135ce5781810151838201526020016135b6565b50505050905090810190601f1680156135fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a360808110611e1f576060805460010190555050565b6001600160a01b03821660009081526052602052604081205461364257506000611c49565b506001600160a01b0391909116600090815260526020526040902054670de0b6b3a764000091020490565b60008161367d575061ffff6133bb565b60005b60058163ffffffff1610156136c25760368163ffffffff16600581106136a257fe5b600502015483116136ba5763ffffffff1690506133bb565b600101613680565b506040805162461bcd60e51b8152602060048201526011602482015270195e18d95959081b585e08185b5bdd5b9d607a1b604482015290519081900360640190fd5b600080613711848461361d565b9050600061371e8261366d565b905061ffff811461380257613732816142e5565b60006036826005811061374157fe5b60050201600201541161379b576040805162461bcd60e51b815260206004820152601a60248201527f696e7374616e74207769746864726177616c7320776173746564000000000000604482015290519081900360640190fd5b603681600581106137a857fe5b6005020160040154603682600581106137bd57fe5b600502016002015414156137e55743603682600581106137d957fe5b60050201600101819055505b603681600581106137f257fe5b6005020160020180546000190190555b506001949350505050565b60408051600480825260a08201909252606091829190602082016080803683370190505090508663ffffffff168160008151811061384757fe5b60200260200101818152505060208665ffffffffffff16901b65ffffffffffff168160008151811061387557fe5b602002602001018181511791508181525050604860ff85901c901b8160008151811061389d57fe5b60200260200101818151179150818152505084816001815181106138bd57fe5b602090810291909101015280516001600160ff1b03851690829060029081106138e257fe5b602002602001018181525050826001600160a01b03168160038151811061390557fe5b60209081029190910101529695505050505050565b60355460405163311083ed60e21b81526020600482018181528451602484015284516000946001600160a01b03169363c4420fb49387939283926044019180860191028083838b5b8381101561397a578181015183820152602001613962565b505050509050019250505060206040518083038186803b15801561399d57600080fd5b505afa1580156139b1573d6000803e3d6000fd5b505050506040513d60208110156139c757600080fd5b505192915050565b60345460405163311083ed60e21b81526020600482018181528451602484015284516000946001600160a01b03169363c4420fb49387939283926044019185810191028083838b831561397a578181015183820152602001613962565b600080613a398484614381565b8551909150600090600019015b60008112613aa657868181518110613a5a57fe5b60200260200101519150600081876000821215613a7357fe5b6001911c811614905080613a9057613a8b8484614407565b613a9a565b613a9a8385614407565b93505060001901613a46565b5050909414949350505050565b6000836001600160a01b031663a9059cbb84846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561341957600080fd5b6000836001600160a01b031663095ea7b383856040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561341957600080fd5b60004660608415613bb657613baf89898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061446a92505050565b9050613bd9565b604080516144008082526144208201909252906020820181803683370190505090505b6060600b60538681548110613bea57fe5b9060005260206000209060020201600101540261456a0167ffffffffffffffff81118015613c1757600080fd5b506040519080825280601f01601f191660200182016040528015613c42576020820181803683370190505b5090506060606160009054906101000a900463ffffffff168e6054548f8f604051602001808663ffffffff1660e01b81526004018563ffffffff1660e01b8152600401848152602001838152602001828152602001955050505050506040516020818303038152906040529050600080602083019150602084019050613cca828285516146a1565b825181019050602085019150613ce2828287516146a1565b84518101905060208b0191508a51600b60538a81548110613cff57fe5b906000526020600020906002020160010154020381019050613d2382828d516146a1565b8a518101905060208a019150613d3b82828c516146a1565b8951810190508560f01b81527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000016002856040518082805190602001908083835b60208310613d9a5780518252601f199092019160209182019101613d7b565b51815160209384036101000a60001901801990921691161790526040519190930194509192505080830381855afa158015613dd9573d6000803e3d6000fd5b5050506040513d6020811015613dee57600080fd5b505181613df757fe5b0696505050505050509998505050505050505050565b60538181548110613e1a57fe5b60009182526020909120600290910201546040805163624c8f8760e01b81526001600160a01b039092169163624c8f879188918891889188916004909101908190869080828437600083820152601f01601f1916909101905084608080828437600083820152601f01601f1916909101905083604080828437600083820152601f01601f19169091019283525050604051602080830195509350915081900382018186803b158015613ecb57600080fd5b505afa158015613edf573d6000803e3d6000fd5b505050506040513d6020811015613ef557600080fd5b50511515600114611778576040805162461bcd60e51b815260206004820152601b60248201527f7a6b2d736e61726b2070726f6f66206973206e6f742076616c69640000000000604482015290519081900360640190fd5b605f546000908152605c60205260408120613f67916147bd565b605f8054600101908190556060541415613f85576060805460010190555b565b6000808560405160200180807f19457468657265756d205369676e6564204d6573736167653a0a393800000000815250601c01806148b96042913960420182815260200191505060405160208183030381529060405280519060200120905060018184878760405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015614040573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b303b1590565b60005b82518161ffff161015612bb75760536040518060400160405280858461ffff168151811061408857fe5b60200260200101516001600160a01b03168152602001848461ffff16815181106140ae57fe5b602090810291909101810151909152825460018082018555600094855293829020835160029092020180546001600160a01b0319166001600160a01b03909216919091178155910151908201550161405e565b600054610100900460ff168061411a575061411a614055565b80614128575060005460ff16155b6141635760405162461bcd60e51b815260040180806020018281038252602e815260200180614841602e913960400191505060405180910390fd5b600054610100900460ff1615801561418e576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b038087166001600160a01b0319928316179092556034805486841690831617905560358054928516929091169190911790558015611312576000805461ff001916905550505050565b600054610100900460ff16806141fb57506141fb614055565b80614209575060005460ff16155b6142445760405162461bcd60e51b815260040180806020018281038252602e815260200180614841602e913960400191505060405180910390fd5b600054610100900460ff1615801561426f576000805460ff1961ff0019909116610100171660011790555b604f80546001600160a01b03199081166001600160a01b03888116919091179092556050805482168784161767ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff881602179055605180549091169184169190911790558015611778576000805461ff00191690555050505050565b6000603682600581106142f457fe5b600502019050600081600101544303905081600401548260020154148061431e5750816003015481105b1561432a57505061437e565b60008260030154828161433957fe5b0490508260040154818460020154011061435c5760048301546002840155611312565b6002830180548201905560038301546001840180549183029190910190555050505b50565b604080516003808252608082019092526000916060919060208201838036833701905050905083816000815181106143b557fe5b60200260200101818152505082816001815181106143cf57fe5b6020026020010181815250506001816002815181106143ea57fe5b6020026020010181815250506143ff816139cf565b949350505050565b6040805160028082526060808301845260009390929190602083019080368337019050509050838160008151811061443b57fe5b602002602001018181525050828160018151811061445557fe5b6020026020010181815250506143ff816146e2565b60606000606583518161447957fe5b605f546000908152605c60209081526040918290208054835160026001831615610100026000190190921691909104601f81018490048402820184019094528381529490930494506060939291908301828280156145185780601f106144ed57610100808354040283529160200191614518565b820191906000526020600020905b8154815290600101906020018083116144fb57829003601f168201915b505050505090506000604482518161452c57fe5b0490506101008382011115614579576040805162461bcd60e51b815260206004820152600e60248201526d4c31205458206f766572666c6f7760901b604482015290519081900360640190fd5b6040805161440080825261442082019092526060916020820181803683370190505090506000806020850191506020830190506145b8828287516146a1565b6020888101906044860285010160005b888110156146925782516001840151602185015160418601516061870151605754606590980197909460f81c9392919060e086901c908110614651576040805162461bcd60e51b815260206004820152601d60248201527f746f6b656e20686173206e6f74206265656e2072656769737465726564000000604482015290519081900360640190fd5b600060ff86161561466b5761466883858789613f87565b90505b60601b8852601488019190915260e01b603c870152505060449093019250506001016145c8565b50939998505050505050505050565b5b602081106146c1578251825260209283019290910190601f19016146a2565b915181516020939093036101000a6000190180199091169216919091179052565b60335460405163311083ed60e21b81526020600482018181528451602484015284516000946001600160a01b03169363c4420fb49387939283926044019185810191028083838b831561397a578181015183820152602001613962565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061478057805160ff19168380011785556147ad565b828001600101855582156147ad579182015b828111156147ad578251825591602001919060010190614792565b506147b99291506147fd565b5090565b50805460018160011615610100020316600290046000825580601f106147e3575061437e565b601f01602090049060005260206000209081019061437e91905b5b808211156147b957600081556001016147fe56fe63616e2774206265206d6f7265207769746864726177616c73207468616e204d6178207769746864726177616c73436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65644661696c206465706f736974204552433230207472616e73616374696f6e0000666f7267652074696d656f7574206d757374206265206c657373207468616e2032343020626c6f636b734920617574686f72697a65207468697320626162796a75626a7562206b657920666f72206865726d657a20726f6c6c7570206163636f756e74206372656174696f6e6465706f73697420616d6f756e74206c6172676572207468616e206d61780000a26469706673582212200176189133de85bb288b8c50dabcb1b8969841d43650a1f1f18c4943a908ab0264736f6c634300060c0033"
34
35// DeployHermez deploys a new Ethereum contract, binding an instance of Hermez to it.
36func DeployHermez(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Hermez, error) {
37 parsed, err := abi.JSON(strings.NewReader(HermezABI))
38 if err != nil {
39 return common.Address{}, nil, nil, err
40 }
41
42 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(HermezBin), backend)
43 if err != nil {
44 return common.Address{}, nil, nil, err
45 }
46 return address, tx, &Hermez{HermezCaller: HermezCaller{contract: contract}, HermezTransactor: HermezTransactor{contract: contract}, HermezFilterer: HermezFilterer{contract: contract}}, nil
47}
48
49// Hermez is an auto generated Go binding around an Ethereum contract.
50type Hermez struct {
51 HermezCaller // Read-only binding to the contract
52 HermezTransactor // Write-only binding to the contract
53 HermezFilterer // Log filterer for contract events
54}
55
56// HermezCaller is an auto generated read-only Go binding around an Ethereum contract.
57type HermezCaller struct {
58 contract *bind.BoundContract // Generic contract wrapper for the low level calls
59}
60
61// HermezTransactor is an auto generated write-only Go binding around an Ethereum contract.
62type HermezTransactor struct {
63 contract *bind.BoundContract // Generic contract wrapper for the low level calls
64}
65
66// HermezFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
67type HermezFilterer struct {
68 contract *bind.BoundContract // Generic contract wrapper for the low level calls
69}
70
71// HermezSession is an auto generated Go binding around an Ethereum contract,
72// with pre-set call and transact options.
73type HermezSession struct {
74 Contract *Hermez // 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// HermezCallerSession is an auto generated read-only Go binding around an Ethereum contract,
80// with pre-set call options.
81type HermezCallerSession struct {
82 Contract *HermezCaller // Generic contract caller binding to set the session for
83 CallOpts bind.CallOpts // Call options to use throughout this session
84}
85
86// HermezTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
87// with pre-set transact options.
88type HermezTransactorSession struct {
89 Contract *HermezTransactor // Generic contract transactor binding to set the session for
90 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
91}
92
93// HermezRaw is an auto generated low-level Go binding around an Ethereum contract.
94type HermezRaw struct {
95 Contract *Hermez // Generic contract binding to access the raw methods on
96}
97
98// HermezCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
99type HermezCallerRaw struct {
100 Contract *HermezCaller // Generic read-only contract binding to access the raw methods on
101}
102
103// HermezTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
104type HermezTransactorRaw struct {
105 Contract *HermezTransactor // Generic write-only contract binding to access the raw methods on
106}
107
108// NewHermez creates a new instance of Hermez, bound to a specific deployed contract.
109func NewHermez(address common.Address, backend bind.ContractBackend) (*Hermez, error) {
110 contract, err := bindHermez(address, backend, backend, backend)
111 if err != nil {
112 return nil, err
113 }
114 return &Hermez{HermezCaller: HermezCaller{contract: contract}, HermezTransactor: HermezTransactor{contract: contract}, HermezFilterer: HermezFilterer{contract: contract}}, nil
115}
116
117// NewHermezCaller creates a new read-only instance of Hermez, bound to a specific deployed contract.
118func NewHermezCaller(address common.Address, caller bind.ContractCaller) (*HermezCaller, error) {
119 contract, err := bindHermez(address, caller, nil, nil)
120 if err != nil {
121 return nil, err
122 }
123 return &HermezCaller{contract: contract}, nil
124}
125
126// NewHermezTransactor creates a new write-only instance of Hermez, bound to a specific deployed contract.
127func NewHermezTransactor(address common.Address, transactor bind.ContractTransactor) (*HermezTransactor, error) {
128 contract, err := bindHermez(address, nil, transactor, nil)
129 if err != nil {
130 return nil, err
131 }
132 return &HermezTransactor{contract: contract}, nil
133}
134
135// NewHermezFilterer creates a new log filterer instance of Hermez, bound to a specific deployed contract.
136func NewHermezFilterer(address common.Address, filterer bind.ContractFilterer) (*HermezFilterer, error) {
137 contract, err := bindHermez(address, nil, nil, filterer)
138 if err != nil {
139 return nil, err
140 }
141 return &HermezFilterer{contract: contract}, nil
142}
143
144// bindHermez binds a generic wrapper to an already deployed contract.
145func bindHermez(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
146 parsed, err := abi.JSON(strings.NewReader(HermezABI))
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 (_Hermez *HermezRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
158 return _Hermez.Contract.HermezCaller.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 (_Hermez *HermezRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
164 return _Hermez.Contract.HermezTransactor.contract.Transfer(opts)
165}
166
167// Transact invokes the (paid) contract method with params as input values.
168func (_Hermez *HermezRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
169 return _Hermez.Contract.HermezTransactor.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 (_Hermez *HermezCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
177 return _Hermez.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 (_Hermez *HermezTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
183 return _Hermez.Contract.contract.Transfer(opts)
184}
185
186// Transact invokes the (paid) contract method with params as input values.
187func (_Hermez *HermezTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
188 return _Hermez.Contract.contract.Transact(opts, method, params...)
189}
190
191// EXITIDX is a free data retrieval call binding the contract method 0xffd3dcf9.
192//
193// Solidity: function EXIT_IDX() view returns(uint32)
194func (_Hermez *HermezCaller) EXITIDX(opts *bind.CallOpts) (uint32, error) {
195 var (
196 ret0 = new(uint32)
197 )
198 out := ret0
199 err := _Hermez.contract.Call(opts, out, "EXIT_IDX")
200 return *ret0, err
201}
202
203// EXITIDX is a free data retrieval call binding the contract method 0xffd3dcf9.
204//
205// Solidity: function EXIT_IDX() view returns(uint32)
206func (_Hermez *HermezSession) EXITIDX() (uint32, error) {
207 return _Hermez.Contract.EXITIDX(&_Hermez.CallOpts)
208}
209
210// EXITIDX is a free data retrieval call binding the contract method 0xffd3dcf9.
211//
212// Solidity: function EXIT_IDX() view returns(uint32)
213func (_Hermez *HermezCallerSession) EXITIDX() (uint32, error) {
214 return _Hermez.Contract.EXITIDX(&_Hermez.CallOpts)
215}
216
217// L1COORDINATORBYTES is a free data retrieval call binding the contract method 0x4d09f3fd.
218//
219// Solidity: function L1_COORDINATOR_BYTES() view returns(uint256)
220func (_Hermez *HermezCaller) L1COORDINATORBYTES(opts *bind.CallOpts) (*big.Int, error) {
221 var (
222 ret0 = new(*big.Int)
223 )
224 out := ret0
225 err := _Hermez.contract.Call(opts, out, "L1_COORDINATOR_BYTES")
226 return *ret0, err
227}
228
229// L1COORDINATORBYTES is a free data retrieval call binding the contract method 0x4d09f3fd.
230//
231// Solidity: function L1_COORDINATOR_BYTES() view returns(uint256)
232func (_Hermez *HermezSession) L1COORDINATORBYTES() (*big.Int, error) {
233 return _Hermez.Contract.L1COORDINATORBYTES(&_Hermez.CallOpts)
234}
235
236// L1COORDINATORBYTES is a free data retrieval call binding the contract method 0x4d09f3fd.
237//
238// Solidity: function L1_COORDINATOR_BYTES() view returns(uint256)
239func (_Hermez *HermezCallerSession) L1COORDINATORBYTES() (*big.Int, error) {
240 return _Hermez.Contract.L1COORDINATORBYTES(&_Hermez.CallOpts)
241}
242
243// L1USERBYTES is a free data retrieval call binding the contract method 0x6d78e572.
244//
245// Solidity: function L1_USER_BYTES() view returns(uint256)
246func (_Hermez *HermezCaller) L1USERBYTES(opts *bind.CallOpts) (*big.Int, error) {
247 var (
248 ret0 = new(*big.Int)
249 )
250 out := ret0
251 err := _Hermez.contract.Call(opts, out, "L1_USER_BYTES")
252 return *ret0, err
253}
254
255// L1USERBYTES is a free data retrieval call binding the contract method 0x6d78e572.
256//
257// Solidity: function L1_USER_BYTES() view returns(uint256)
258func (_Hermez *HermezSession) L1USERBYTES() (*big.Int, error) {
259 return _Hermez.Contract.L1USERBYTES(&_Hermez.CallOpts)
260}
261
262// L1USERBYTES is a free data retrieval call binding the contract method 0x6d78e572.
263//
264// Solidity: function L1_USER_BYTES() view returns(uint256)
265func (_Hermez *HermezCallerSession) L1USERBYTES() (*big.Int, error) {
266 return _Hermez.Contract.L1USERBYTES(&_Hermez.CallOpts)
267}
268
269// L2BYTES is a free data retrieval call binding the contract method 0x4fc51559.
270//
271// Solidity: function L2_BYTES() view returns(uint256)
272func (_Hermez *HermezCaller) L2BYTES(opts *bind.CallOpts) (*big.Int, error) {
273 var (
274 ret0 = new(*big.Int)
275 )
276 out := ret0
277 err := _Hermez.contract.Call(opts, out, "L2_BYTES")
278 return *ret0, err
279}
280
281// L2BYTES is a free data retrieval call binding the contract method 0x4fc51559.
282//
283// Solidity: function L2_BYTES() view returns(uint256)
284func (_Hermez *HermezSession) L2BYTES() (*big.Int, error) {
285 return _Hermez.Contract.L2BYTES(&_Hermez.CallOpts)
286}
287
288// L2BYTES is a free data retrieval call binding the contract method 0x4fc51559.
289//
290// Solidity: function L2_BYTES() view returns(uint256)
291func (_Hermez *HermezCallerSession) L2BYTES() (*big.Int, error) {
292 return _Hermez.Contract.L2BYTES(&_Hermez.CallOpts)
293}
294
295// LASTIDX is a free data retrieval call binding the contract method 0x8e65ab4f.
296//
297// Solidity: function LAST_IDX() view returns(uint32)
298func (_Hermez *HermezCaller) LASTIDX(opts *bind.CallOpts) (uint32, error) {
299 var (
300 ret0 = new(uint32)
301 )
302 out := ret0
303 err := _Hermez.contract.Call(opts, out, "LAST_IDX")
304 return *ret0, err
305}
306
307// LASTIDX is a free data retrieval call binding the contract method 0x8e65ab4f.
308//
309// Solidity: function LAST_IDX() view returns(uint32)
310func (_Hermez *HermezSession) LASTIDX() (uint32, error) {
311 return _Hermez.Contract.LASTIDX(&_Hermez.CallOpts)
312}
313
314// LASTIDX is a free data retrieval call binding the contract method 0x8e65ab4f.
315//
316// Solidity: function LAST_IDX() view returns(uint32)
317func (_Hermez *HermezCallerSession) LASTIDX() (uint32, error) {
318 return _Hermez.Contract.LASTIDX(&_Hermez.CallOpts)
319}
320
321// MAXAMOUNT is a free data retrieval call binding the contract method 0xd40dc870.
322//
323// Solidity: function MAX_AMOUNT() view returns(uint256)
324func (_Hermez *HermezCaller) MAXAMOUNT(opts *bind.CallOpts) (*big.Int, error) {
325 var (
326 ret0 = new(*big.Int)
327 )
328 out := ret0
329 err := _Hermez.contract.Call(opts, out, "MAX_AMOUNT")
330 return *ret0, err
331}
332
333// MAXAMOUNT is a free data retrieval call binding the contract method 0xd40dc870.
334//
335// Solidity: function MAX_AMOUNT() view returns(uint256)
336func (_Hermez *HermezSession) MAXAMOUNT() (*big.Int, error) {
337 return _Hermez.Contract.MAXAMOUNT(&_Hermez.CallOpts)
338}
339
340// MAXAMOUNT is a free data retrieval call binding the contract method 0xd40dc870.
341//
342// Solidity: function MAX_AMOUNT() view returns(uint256)
343func (_Hermez *HermezCallerSession) MAXAMOUNT() (*big.Int, error) {
344 return _Hermez.Contract.MAXAMOUNT(&_Hermez.CallOpts)
345}
346
347// MAXL1TX is a free data retrieval call binding the contract method 0x45d1c25b.
348//
349// Solidity: function MAX_L1_TX() view returns(uint256)
350func (_Hermez *HermezCaller) MAXL1TX(opts *bind.CallOpts) (*big.Int, error) {
351 var (
352 ret0 = new(*big.Int)
353 )
354 out := ret0
355 err := _Hermez.contract.Call(opts, out, "MAX_L1_TX")
356 return *ret0, err
357}
358
359// MAXL1TX is a free data retrieval call binding the contract method 0x45d1c25b.
360//
361// Solidity: function MAX_L1_TX() view returns(uint256)
362func (_Hermez *HermezSession) MAXL1TX() (*big.Int, error) {
363 return _Hermez.Contract.MAXL1TX(&_Hermez.CallOpts)
364}
365
366// MAXL1TX is a free data retrieval call binding the contract method 0x45d1c25b.
367//
368// Solidity: function MAX_L1_TX() view returns(uint256)
369func (_Hermez *HermezCallerSession) MAXL1TX() (*big.Int, error) {
370 return _Hermez.Contract.MAXL1TX(&_Hermez.CallOpts)
371}
372
373// MAXL1USERTX is a free data retrieval call binding the contract method 0x51ff68b0.
374//
375// Solidity: function MAX_L1_USER_TX() view returns(uint256)
376func (_Hermez *HermezCaller) MAXL1USERTX(opts *bind.CallOpts) (*big.Int, error) {
377 var (
378 ret0 = new(*big.Int)
379 )
380 out := ret0
381 err := _Hermez.contract.Call(opts, out, "MAX_L1_USER_TX")
382 return *ret0, err
383}
384
385// MAXL1USERTX is a free data retrieval call binding the contract method 0x51ff68b0.
386//
387// Solidity: function MAX_L1_USER_TX() view returns(uint256)
388func (_Hermez *HermezSession) MAXL1USERTX() (*big.Int, error) {
389 return _Hermez.Contract.MAXL1USERTX(&_Hermez.CallOpts)
390}
391
392// MAXL1USERTX is a free data retrieval call binding the contract method 0x51ff68b0.
393//
394// Solidity: function MAX_L1_USER_TX() view returns(uint256)
395func (_Hermez *HermezCallerSession) MAXL1USERTX() (*big.Int, error) {
396 return _Hermez.Contract.MAXL1USERTX(&_Hermez.CallOpts)
397}
398
399// MAXLOADAMOUNT is a free data retrieval call binding the contract method 0x20f6a08f.
400//
401// Solidity: function MAX_LOAD_AMOUNT() view returns(uint256)
402func (_Hermez *HermezCaller) MAXLOADAMOUNT(opts *bind.CallOpts) (*big.Int, error) {
403 var (
404 ret0 = new(*big.Int)
405 )
406 out := ret0
407 err := _Hermez.contract.Call(opts, out, "MAX_LOAD_AMOUNT")
408 return *ret0, err
409}
410
411// MAXLOADAMOUNT is a free data retrieval call binding the contract method 0x20f6a08f.
412//
413// Solidity: function MAX_LOAD_AMOUNT() view returns(uint256)
414func (_Hermez *HermezSession) MAXLOADAMOUNT() (*big.Int, error) {
415 return _Hermez.Contract.MAXLOADAMOUNT(&_Hermez.CallOpts)
416}
417
418// MAXLOADAMOUNT is a free data retrieval call binding the contract method 0x20f6a08f.
419//
420// Solidity: function MAX_LOAD_AMOUNT() view returns(uint256)
421func (_Hermez *HermezCallerSession) MAXLOADAMOUNT() (*big.Int, error) {
422 return _Hermez.Contract.MAXLOADAMOUNT(&_Hermez.CallOpts)
423}
424
425// MAXTOKENS is a free data retrieval call binding the contract method 0xf47c84c5.
426//
427// Solidity: function MAX_TOKENS() view returns(uint256)
428func (_Hermez *HermezCaller) MAXTOKENS(opts *bind.CallOpts) (*big.Int, error) {
429 var (
430 ret0 = new(*big.Int)
431 )
432 out := ret0
433 err := _Hermez.contract.Call(opts, out, "MAX_TOKENS")
434 return *ret0, err
435}
436
437// MAXTOKENS is a free data retrieval call binding the contract method 0xf47c84c5.
438//
439// Solidity: function MAX_TOKENS() view returns(uint256)
440func (_Hermez *HermezSession) MAXTOKENS() (*big.Int, error) {
441 return _Hermez.Contract.MAXTOKENS(&_Hermez.CallOpts)
442}
443
444// MAXTOKENS is a free data retrieval call binding the contract method 0xf47c84c5.
445//
446// Solidity: function MAX_TOKENS() view returns(uint256)
447func (_Hermez *HermezCallerSession) MAXTOKENS() (*big.Int, error) {
448 return _Hermez.Contract.MAXTOKENS(&_Hermez.CallOpts)
449}
450
451// MAXWITHDRAWALDELAY is a free data retrieval call binding the contract method 0xa238f9df.
452//
453// Solidity: function MAX_WITHDRAWAL_DELAY() view returns(uint256)
454func (_Hermez *HermezCaller) MAXWITHDRAWALDELAY(opts *bind.CallOpts) (*big.Int, error) {
455 var (
456 ret0 = new(*big.Int)
457 )
458 out := ret0
459 err := _Hermez.contract.Call(opts, out, "MAX_WITHDRAWAL_DELAY")
460 return *ret0, err
461}
462
463// MAXWITHDRAWALDELAY is a free data retrieval call binding the contract method 0xa238f9df.
464//
465// Solidity: function MAX_WITHDRAWAL_DELAY() view returns(uint256)
466func (_Hermez *HermezSession) MAXWITHDRAWALDELAY() (*big.Int, error) {
467 return _Hermez.Contract.MAXWITHDRAWALDELAY(&_Hermez.CallOpts)
468}
469
470// MAXWITHDRAWALDELAY is a free data retrieval call binding the contract method 0xa238f9df.
471//
472// Solidity: function MAX_WITHDRAWAL_DELAY() view returns(uint256)
473func (_Hermez *HermezCallerSession) MAXWITHDRAWALDELAY() (*big.Int, error) {
474 return _Hermez.Contract.MAXWITHDRAWALDELAY(&_Hermez.CallOpts)
475}
476
477// NOLIMIT is a free data retrieval call binding the contract method 0xa60034fb.
478//
479// Solidity: function NO_LIMIT() view returns(uint256)
480func (_Hermez *HermezCaller) NOLIMIT(opts *bind.CallOpts) (*big.Int, error) {
481 var (
482 ret0 = new(*big.Int)
483 )
484 out := ret0
485 err := _Hermez.contract.Call(opts, out, "NO_LIMIT")
486 return *ret0, err
487}
488
489// NOLIMIT is a free data retrieval call binding the contract method 0xa60034fb.
490//
491// Solidity: function NO_LIMIT() view returns(uint256)
492func (_Hermez *HermezSession) NOLIMIT() (*big.Int, error) {
493 return _Hermez.Contract.NOLIMIT(&_Hermez.CallOpts)
494}
495
496// NOLIMIT is a free data retrieval call binding the contract method 0xa60034fb.
497//
498// Solidity: function NO_LIMIT() view returns(uint256)
499func (_Hermez *HermezCallerSession) NOLIMIT() (*big.Int, error) {
500 return _Hermez.Contract.NOLIMIT(&_Hermez.CallOpts)
501}
502
503// NUMBUCKETS is a free data retrieval call binding the contract method 0xc56ca84e.
504//
505// Solidity: function NUM_BUCKETS() view returns(uint256)
506func (_Hermez *HermezCaller) NUMBUCKETS(opts *bind.CallOpts) (*big.Int, error) {
507 var (
508 ret0 = new(*big.Int)
509 )
510 out := ret0
511 err := _Hermez.contract.Call(opts, out, "NUM_BUCKETS")
512 return *ret0, err
513}
514
515// NUMBUCKETS is a free data retrieval call binding the contract method 0xc56ca84e.
516//
517// Solidity: function NUM_BUCKETS() view returns(uint256)
518func (_Hermez *HermezSession) NUMBUCKETS() (*big.Int, error) {
519 return _Hermez.Contract.NUMBUCKETS(&_Hermez.CallOpts)
520}
521
522// NUMBUCKETS is a free data retrieval call binding the contract method 0xc56ca84e.
523//
524// Solidity: function NUM_BUCKETS() view returns(uint256)
525func (_Hermez *HermezCallerSession) NUMBUCKETS() (*big.Int, error) {
526 return _Hermez.Contract.NUMBUCKETS(&_Hermez.CallOpts)
527}
528
529// RESERVEDIDX is a free data retrieval call binding the contract method 0xfff69970.
530//
531// Solidity: function RESERVED_IDX() view returns(uint32)
532func (_Hermez *HermezCaller) RESERVEDIDX(opts *bind.CallOpts) (uint32, error) {
533 var (
534 ret0 = new(uint32)
535 )
536 out := ret0
537 err := _Hermez.contract.Call(opts, out, "RESERVED_IDX")
538 return *ret0, err
539}
540
541// RESERVEDIDX is a free data retrieval call binding the contract method 0xfff69970.
542//
543// Solidity: function RESERVED_IDX() view returns(uint32)
544func (_Hermez *HermezSession) RESERVEDIDX() (uint32, error) {
545 return _Hermez.Contract.RESERVEDIDX(&_Hermez.CallOpts)
546}
547
548// RESERVEDIDX is a free data retrieval call binding the contract method 0xfff69970.
549//
550// Solidity: function RESERVED_IDX() view returns(uint32)
551func (_Hermez *HermezCallerSession) RESERVEDIDX() (uint32, error) {
552 return _Hermez.Contract.RESERVEDIDX(&_Hermez.CallOpts)
553}
554
555// RFIELD is a free data retrieval call binding the contract method 0x58de75c4.
556//
557// Solidity: function RFIELD() view returns(uint256)
558func (_Hermez *HermezCaller) RFIELD(opts *bind.CallOpts) (*big.Int, error) {
559 var (
560 ret0 = new(*big.Int)
561 )
562 out := ret0
563 err := _Hermez.contract.Call(opts, out, "RFIELD")
564 return *ret0, err
565}
566
567// RFIELD is a free data retrieval call binding the contract method 0x58de75c4.
568//
569// Solidity: function RFIELD() view returns(uint256)
570func (_Hermez *HermezSession) RFIELD() (*big.Int, error) {
571 return _Hermez.Contract.RFIELD(&_Hermez.CallOpts)
572}
573
574// RFIELD is a free data retrieval call binding the contract method 0x58de75c4.
575//
576// Solidity: function RFIELD() view returns(uint256)
577func (_Hermez *HermezCallerSession) RFIELD() (*big.Int, error) {
578 return _Hermez.Contract.RFIELD(&_Hermez.CallOpts)
579}
580
581// Buckets is a free data retrieval call binding the contract method 0x9b51fb0d.
582//
583// Solidity: function buckets(uint256 ) view returns(uint256 ceilUSD, uint256 blockStamp, uint256 withdrawals, uint256 blockWithdrawalRate, uint256 maxWithdrawals)
584func (_Hermez *HermezCaller) Buckets(opts *bind.CallOpts, arg0 *big.Int) (struct {
585 CeilUSD *big.Int
586 BlockStamp *big.Int
587 Withdrawals *big.Int
588 BlockWithdrawalRate *big.Int
589 MaxWithdrawals *big.Int
590}, error) {
591 ret := new(struct {
592 CeilUSD *big.Int
593 BlockStamp *big.Int
594 Withdrawals *big.Int
595 BlockWithdrawalRate *big.Int
596 MaxWithdrawals *big.Int
597 })
598 out := ret
599 err := _Hermez.contract.Call(opts, out, "buckets", arg0)
600 return *ret, err
601}
602
603// Buckets is a free data retrieval call binding the contract method 0x9b51fb0d.
604//
605// Solidity: function buckets(uint256 ) view returns(uint256 ceilUSD, uint256 blockStamp, uint256 withdrawals, uint256 blockWithdrawalRate, uint256 maxWithdrawals)
606func (_Hermez *HermezSession) Buckets(arg0 *big.Int) (struct {
607 CeilUSD *big.Int
608 BlockStamp *big.Int
609 Withdrawals *big.Int
610 BlockWithdrawalRate *big.Int
611 MaxWithdrawals *big.Int
612}, error) {
613 return _Hermez.Contract.Buckets(&_Hermez.CallOpts, arg0)
614}
615
616// Buckets is a free data retrieval call binding the contract method 0x9b51fb0d.
617//
618// Solidity: function buckets(uint256 ) view returns(uint256 ceilUSD, uint256 blockStamp, uint256 withdrawals, uint256 blockWithdrawalRate, uint256 maxWithdrawals)
619func (_Hermez *HermezCallerSession) Buckets(arg0 *big.Int) (struct {
620 CeilUSD *big.Int
621 BlockStamp *big.Int
622 Withdrawals *big.Int
623 BlockWithdrawalRate *big.Int
624 MaxWithdrawals *big.Int
625}, error) {
626 return _Hermez.Contract.Buckets(&_Hermez.CallOpts, arg0)
627}
628
629// CircuitVerifiers is a free data retrieval call binding the contract method 0xa4b457ca.
630//
631// Solidity: function circuitVerifiers(uint256 ) view returns(address verifierInt, uint256 maxTx)
632func (_Hermez *HermezCaller) CircuitVerifiers(opts *bind.CallOpts, arg0 *big.Int) (struct {
633 VerifierInt common.Address
634 MaxTx *big.Int
635}, error) {
636 ret := new(struct {
637 VerifierInt common.Address
638 MaxTx *big.Int
639 })
640 out := ret
641 err := _Hermez.contract.Call(opts, out, "circuitVerifiers", arg0)
642 return *ret, err
643}
644
645// CircuitVerifiers is a free data retrieval call binding the contract method 0xa4b457ca.
646//
647// Solidity: function circuitVerifiers(uint256 ) view returns(address verifierInt, uint256 maxTx)
648func (_Hermez *HermezSession) CircuitVerifiers(arg0 *big.Int) (struct {
649 VerifierInt common.Address
650 MaxTx *big.Int
651}, error) {
652 return _Hermez.Contract.CircuitVerifiers(&_Hermez.CallOpts, arg0)
653}
654
655// CircuitVerifiers is a free data retrieval call binding the contract method 0xa4b457ca.
656//
657// Solidity: function circuitVerifiers(uint256 ) view returns(address verifierInt, uint256 maxTx)
658func (_Hermez *HermezCallerSession) CircuitVerifiers(arg0 *big.Int) (struct {
659 VerifierInt common.Address
660 MaxTx *big.Int
661}, error) {
662 return _Hermez.Contract.CircuitVerifiers(&_Hermez.CallOpts, arg0)
663}
664
665// CurrentIdx is a free data retrieval call binding the contract method 0x5bfac41f.
666//
667// Solidity: function currentIdx() view returns(uint32)
668func (_Hermez *HermezCaller) CurrentIdx(opts *bind.CallOpts) (uint32, error) {
669 var (
670 ret0 = new(uint32)
671 )
672 out := ret0
673 err := _Hermez.contract.Call(opts, out, "currentIdx")
674 return *ret0, err
675}
676
677// CurrentIdx is a free data retrieval call binding the contract method 0x5bfac41f.
678//
679// Solidity: function currentIdx() view returns(uint32)
680func (_Hermez *HermezSession) CurrentIdx() (uint32, error) {
681 return _Hermez.Contract.CurrentIdx(&_Hermez.CallOpts)
682}
683
684// CurrentIdx is a free data retrieval call binding the contract method 0x5bfac41f.
685//
686// Solidity: function currentIdx() view returns(uint32)
687func (_Hermez *HermezCallerSession) CurrentIdx() (uint32, error) {
688 return _Hermez.Contract.CurrentIdx(&_Hermez.CallOpts)
689}
690
691// ExitNullifierMap is a free data retrieval call binding the contract method 0x2bf41a2f.
692//
693// Solidity: function exitNullifierMap(uint256 ) view returns(bool)
694func (_Hermez *HermezCaller) ExitNullifierMap(opts *bind.CallOpts, arg0 *big.Int) (bool, error) {
695 var (
696 ret0 = new(bool)
697 )
698 out := ret0
699 err := _Hermez.contract.Call(opts, out, "exitNullifierMap", arg0)
700 return *ret0, err
701}
702
703// ExitNullifierMap is a free data retrieval call binding the contract method 0x2bf41a2f.
704//
705// Solidity: function exitNullifierMap(uint256 ) view returns(bool)
706func (_Hermez *HermezSession) ExitNullifierMap(arg0 *big.Int) (bool, error) {
707 return _Hermez.Contract.ExitNullifierMap(&_Hermez.CallOpts, arg0)
708}
709
710// ExitNullifierMap is a free data retrieval call binding the contract method 0x2bf41a2f.
711//
712// Solidity: function exitNullifierMap(uint256 ) view returns(bool)
713func (_Hermez *HermezCallerSession) ExitNullifierMap(arg0 *big.Int) (bool, error) {
714 return _Hermez.Contract.ExitNullifierMap(&_Hermez.CallOpts, arg0)
715}
716
717// ExitRoots is a free data retrieval call binding the contract method 0x50263f8c.
718//
719// Solidity: function exitRoots(uint256 ) view returns(uint256)
720func (_Hermez *HermezCaller) ExitRoots(opts *bind.CallOpts, arg0 *big.Int) (*big.Int, error) {
721 var (
722 ret0 = new(*big.Int)
723 )
724 out := ret0
725 err := _Hermez.contract.Call(opts, out, "exitRoots", arg0)
726 return *ret0, err
727}
728
729// ExitRoots is a free data retrieval call binding the contract method 0x50263f8c.
730//
731// Solidity: function exitRoots(uint256 ) view returns(uint256)
732func (_Hermez *HermezSession) ExitRoots(arg0 *big.Int) (*big.Int, error) {
733 return _Hermez.Contract.ExitRoots(&_Hermez.CallOpts, arg0)
734}
735
736// ExitRoots is a free data retrieval call binding the contract method 0x50263f8c.
737//
738// Solidity: function exitRoots(uint256 ) view returns(uint256)
739func (_Hermez *HermezCallerSession) ExitRoots(arg0 *big.Int) (*big.Int, error) {
740 return _Hermez.Contract.ExitRoots(&_Hermez.CallOpts, arg0)
741}
742
743// FeeAddToken is a free data retrieval call binding the contract method 0xbded9bb8.
744//
745// Solidity: function feeAddToken() view returns(uint256)
746func (_Hermez *HermezCaller) FeeAddToken(opts *bind.CallOpts) (*big.Int, error) {
747 var (
748 ret0 = new(*big.Int)
749 )
750 out := ret0
751 err := _Hermez.contract.Call(opts, out, "feeAddToken")
752 return *ret0, err
753}
754
755// FeeAddToken is a free data retrieval call binding the contract method 0xbded9bb8.
756//
757// Solidity: function feeAddToken() view returns(uint256)
758func (_Hermez *HermezSession) FeeAddToken() (*big.Int, error) {
759 return _Hermez.Contract.FeeAddToken(&_Hermez.CallOpts)
760}
761
762// FeeAddToken is a free data retrieval call binding the contract method 0xbded9bb8.
763//
764// Solidity: function feeAddToken() view returns(uint256)
765func (_Hermez *HermezCallerSession) FeeAddToken() (*big.Int, error) {
766 return _Hermez.Contract.FeeAddToken(&_Hermez.CallOpts)
767}
768
769// ForgeL1L2BatchTimeout is a free data retrieval call binding the contract method 0xa3275838.
770//
771// Solidity: function forgeL1L2BatchTimeout() view returns(uint256)
772func (_Hermez *HermezCaller) ForgeL1L2BatchTimeout(opts *bind.CallOpts) (*big.Int, error) {
773 var (
774 ret0 = new(*big.Int)
775 )
776 out := ret0
777 err := _Hermez.contract.Call(opts, out, "forgeL1L2BatchTimeout")
778 return *ret0, err
779}
780
781// ForgeL1L2BatchTimeout is a free data retrieval call binding the contract method 0xa3275838.
782//
783// Solidity: function forgeL1L2BatchTimeout() view returns(uint256)
784func (_Hermez *HermezSession) ForgeL1L2BatchTimeout() (*big.Int, error) {
785 return _Hermez.Contract.ForgeL1L2BatchTimeout(&_Hermez.CallOpts)
786}
787
788// ForgeL1L2BatchTimeout is a free data retrieval call binding the contract method 0xa3275838.
789//
790// Solidity: function forgeL1L2BatchTimeout() view returns(uint256)
791func (_Hermez *HermezCallerSession) ForgeL1L2BatchTimeout() (*big.Int, error) {
792 return _Hermez.Contract.ForgeL1L2BatchTimeout(&_Hermez.CallOpts)
793}
794
795// GetCurrentBatch is a free data retrieval call binding the contract method 0xac3851cd.
796//
797// Solidity: function getCurrentBatch() view returns(uint256)
798func (_Hermez *HermezCaller) GetCurrentBatch(opts *bind.CallOpts) (*big.Int, error) {
799 var (
800 ret0 = new(*big.Int)
801 )
802 out := ret0
803 err := _Hermez.contract.Call(opts, out, "getCurrentBatch")
804 return *ret0, err
805}
806
807// GetCurrentBatch is a free data retrieval call binding the contract method 0xac3851cd.
808//
809// Solidity: function getCurrentBatch() view returns(uint256)
810func (_Hermez *HermezSession) GetCurrentBatch() (*big.Int, error) {
811 return _Hermez.Contract.GetCurrentBatch(&_Hermez.CallOpts)
812}
813
814// GetCurrentBatch is a free data retrieval call binding the contract method 0xac3851cd.
815//
816// Solidity: function getCurrentBatch() view returns(uint256)
817func (_Hermez *HermezCallerSession) GetCurrentBatch() (*big.Int, error) {
818 return _Hermez.Contract.GetCurrentBatch(&_Hermez.CallOpts)
819}
820
821// GetCurrentTokens is a free data retrieval call binding the contract method 0xcc77828d.
822//
823// Solidity: function getCurrentTokens() view returns(uint256)
824func (_Hermez *HermezCaller) GetCurrentTokens(opts *bind.CallOpts) (*big.Int, error) {
825 var (
826 ret0 = new(*big.Int)
827 )
828 out := ret0
829 err := _Hermez.contract.Call(opts, out, "getCurrentTokens")
830 return *ret0, err
831}
832
833// GetCurrentTokens is a free data retrieval call binding the contract method 0xcc77828d.
834//
835// Solidity: function getCurrentTokens() view returns(uint256)
836func (_Hermez *HermezSession) GetCurrentTokens() (*big.Int, error) {
837 return _Hermez.Contract.GetCurrentTokens(&_Hermez.CallOpts)
838}
839
840// GetCurrentTokens is a free data retrieval call binding the contract method 0xcc77828d.
841//
842// Solidity: function getCurrentTokens() view returns(uint256)
843func (_Hermez *HermezCallerSession) GetCurrentTokens() (*big.Int, error) {
844 return _Hermez.Contract.GetCurrentTokens(&_Hermez.CallOpts)
845}
846
847// GovernanceAddress is a free data retrieval call binding the contract method 0x795053d3.
848//
849// Solidity: function governanceAddress() view returns(address)
850func (_Hermez *HermezCaller) GovernanceAddress(opts *bind.CallOpts) (common.Address, error) {
851 var (
852 ret0 = new(common.Address)
853 )
854 out := ret0
855 err := _Hermez.contract.Call(opts, out, "governanceAddress")
856 return *ret0, err
857}
858
859// GovernanceAddress is a free data retrieval call binding the contract method 0x795053d3.
860//
861// Solidity: function governanceAddress() view returns(address)
862func (_Hermez *HermezSession) GovernanceAddress() (common.Address, error) {
863 return _Hermez.Contract.GovernanceAddress(&_Hermez.CallOpts)
864}
865
866// GovernanceAddress is a free data retrieval call binding the contract method 0x795053d3.
867//
868// Solidity: function governanceAddress() view returns(address)
869func (_Hermez *HermezCallerSession) GovernanceAddress() (common.Address, error) {
870 return _Hermez.Contract.GovernanceAddress(&_Hermez.CallOpts)
871}
872
873// HermezAuctionContract is a free data retrieval call binding the contract method 0x2bd83626.
874//
875// Solidity: function hermezAuctionContract() view returns(address)
876func (_Hermez *HermezCaller) HermezAuctionContract(opts *bind.CallOpts) (common.Address, error) {
877 var (
878 ret0 = new(common.Address)
879 )
880 out := ret0
881 err := _Hermez.contract.Call(opts, out, "hermezAuctionContract")
882 return *ret0, err
883}
884
885// HermezAuctionContract is a free data retrieval call binding the contract method 0x2bd83626.
886//
887// Solidity: function hermezAuctionContract() view returns(address)
888func (_Hermez *HermezSession) HermezAuctionContract() (common.Address, error) {
889 return _Hermez.Contract.HermezAuctionContract(&_Hermez.CallOpts)
890}
891
892// HermezAuctionContract is a free data retrieval call binding the contract method 0x2bd83626.
893//
894// Solidity: function hermezAuctionContract() view returns(address)
895func (_Hermez *HermezCallerSession) HermezAuctionContract() (common.Address, error) {
896 return _Hermez.Contract.HermezAuctionContract(&_Hermez.CallOpts)
897}
898
899// InstantWithdrawalViewer is a free data retrieval call binding the contract method 0x5f59f58e.
900//
901// Solidity: function instantWithdrawalViewer(address tokenAddress, uint256 amount) view returns(bool)
902func (_Hermez *HermezCaller) InstantWithdrawalViewer(opts *bind.CallOpts, tokenAddress common.Address, amount *big.Int) (bool, error) {
903 var (
904 ret0 = new(bool)
905 )
906 out := ret0
907 err := _Hermez.contract.Call(opts, out, "instantWithdrawalViewer", tokenAddress, amount)
908 return *ret0, err
909}
910
911// InstantWithdrawalViewer is a free data retrieval call binding the contract method 0x5f59f58e.
912//
913// Solidity: function instantWithdrawalViewer(address tokenAddress, uint256 amount) view returns(bool)
914func (_Hermez *HermezSession) InstantWithdrawalViewer(tokenAddress common.Address, amount *big.Int) (bool, error) {
915 return _Hermez.Contract.InstantWithdrawalViewer(&_Hermez.CallOpts, tokenAddress, amount)
916}
917
918// InstantWithdrawalViewer is a free data retrieval call binding the contract method 0x5f59f58e.
919//
920// Solidity: function instantWithdrawalViewer(address tokenAddress, uint256 amount) view returns(bool)
921func (_Hermez *HermezCallerSession) InstantWithdrawalViewer(tokenAddress common.Address, amount *big.Int) (bool, error) {
922 return _Hermez.Contract.InstantWithdrawalViewer(&_Hermez.CallOpts, tokenAddress, amount)
923}
924
925// LastL1L2Batch is a free data retrieval call binding the contract method 0x84ef9ed4.
926//
927// Solidity: function lastL1L2Batch() view returns(uint256)
928func (_Hermez *HermezCaller) LastL1L2Batch(opts *bind.CallOpts) (*big.Int, error) {
929 var (
930 ret0 = new(*big.Int)
931 )
932 out := ret0
933 err := _Hermez.contract.Call(opts, out, "lastL1L2Batch")
934 return *ret0, err
935}
936
937// LastL1L2Batch is a free data retrieval call binding the contract method 0x84ef9ed4.
938//
939// Solidity: function lastL1L2Batch() view returns(uint256)
940func (_Hermez *HermezSession) LastL1L2Batch() (*big.Int, error) {
941 return _Hermez.Contract.LastL1L2Batch(&_Hermez.CallOpts)
942}
943
944// LastL1L2Batch is a free data retrieval call binding the contract method 0x84ef9ed4.
945//
946// Solidity: function lastL1L2Batch() view returns(uint256)
947func (_Hermez *HermezCallerSession) LastL1L2Batch() (*big.Int, error) {
948 return _Hermez.Contract.LastL1L2Batch(&_Hermez.CallOpts)
949}
950
951// MapL1TxQueue is a free data retrieval call binding the contract method 0x3ec0b07c.
952//
953// Solidity: function mapL1TxQueue(uint256 ) view returns(bytes)
954func (_Hermez *HermezCaller) MapL1TxQueue(opts *bind.CallOpts, arg0 *big.Int) ([]byte, error) {
955 var (
956 ret0 = new([]byte)
957 )
958 out := ret0
959 err := _Hermez.contract.Call(opts, out, "mapL1TxQueue", arg0)
960 return *ret0, err
961}
962
963// MapL1TxQueue is a free data retrieval call binding the contract method 0x3ec0b07c.
964//
965// Solidity: function mapL1TxQueue(uint256 ) view returns(bytes)
966func (_Hermez *HermezSession) MapL1TxQueue(arg0 *big.Int) ([]byte, error) {
967 return _Hermez.Contract.MapL1TxQueue(&_Hermez.CallOpts, arg0)
968}
969
970// MapL1TxQueue is a free data retrieval call binding the contract method 0x3ec0b07c.
971//
972// Solidity: function mapL1TxQueue(uint256 ) view returns(bytes)
973func (_Hermez *HermezCallerSession) MapL1TxQueue(arg0 *big.Int) ([]byte, error) {
974 return _Hermez.Contract.MapL1TxQueue(&_Hermez.CallOpts, arg0)
975}
976
977// NextForgedQueue is a free data retrieval call binding the contract method 0xc970ea8e.
978//
979// Solidity: function nextForgedQueue() view returns(uint256)
980func (_Hermez *HermezCaller) NextForgedQueue(opts *bind.CallOpts) (*big.Int, error) {
981 var (
982 ret0 = new(*big.Int)
983 )
984 out := ret0
985 err := _Hermez.contract.Call(opts, out, "nextForgedQueue")
986 return *ret0, err
987}
988
989// NextForgedQueue is a free data retrieval call binding the contract method 0xc970ea8e.
990//
991// Solidity: function nextForgedQueue() view returns(uint256)
992func (_Hermez *HermezSession) NextForgedQueue() (*big.Int, error) {
993 return _Hermez.Contract.NextForgedQueue(&_Hermez.CallOpts)
994}
995
996// NextForgedQueue is a free data retrieval call binding the contract method 0xc970ea8e.
997//
998// Solidity: function nextForgedQueue() view returns(uint256)
999func (_Hermez *HermezCallerSession) NextForgedQueue() (*big.Int, error) {
1000 return _Hermez.Contract.NextForgedQueue(&_Hermez.CallOpts)
1001}
1002
1003// NextL1FillingQueue is a free data retrieval call binding the contract method 0x0ee8e52b.
1004//
1005// Solidity: function nextL1FillingQueue() view returns(uint256)
1006func (_Hermez *HermezCaller) NextL1FillingQueue(opts *bind.CallOpts) (*big.Int, error) {
1007 var (
1008 ret0 = new(*big.Int)
1009 )
1010 out := ret0
1011 err := _Hermez.contract.Call(opts, out, "nextL1FillingQueue")
1012 return *ret0, err
1013}
1014
1015// NextL1FillingQueue is a free data retrieval call binding the contract method 0x0ee8e52b.
1016//
1017// Solidity: function nextL1FillingQueue() view returns(uint256)
1018func (_Hermez *HermezSession) NextL1FillingQueue() (*big.Int, error) {
1019 return _Hermez.Contract.NextL1FillingQueue(&_Hermez.CallOpts)
1020}
1021
1022// NextL1FillingQueue is a free data retrieval call binding the contract method 0x0ee8e52b.
1023//
1024// Solidity: function nextL1FillingQueue() view returns(uint256)
1025func (_Hermez *HermezCallerSession) NextL1FillingQueue() (*big.Int, error) {
1026 return _Hermez.Contract.NextL1FillingQueue(&_Hermez.CallOpts)
1027}
1028
1029// SafetyAddress is a free data retrieval call binding the contract method 0xe56e27ae.
1030//
1031// Solidity: function safetyAddress() view returns(address)
1032func (_Hermez *HermezCaller) SafetyAddress(opts *bind.CallOpts) (common.Address, error) {
1033 var (
1034 ret0 = new(common.Address)
1035 )
1036 out := ret0
1037 err := _Hermez.contract.Call(opts, out, "safetyAddress")
1038 return *ret0, err
1039}
1040
1041// SafetyAddress is a free data retrieval call binding the contract method 0xe56e27ae.
1042//
1043// Solidity: function safetyAddress() view returns(address)
1044func (_Hermez *HermezSession) SafetyAddress() (common.Address, error) {
1045 return _Hermez.Contract.SafetyAddress(&_Hermez.CallOpts)
1046}
1047
1048// SafetyAddress is a free data retrieval call binding the contract method 0xe56e27ae.
1049//
1050// Solidity: function safetyAddress() view returns(address)
1051func (_Hermez *HermezCallerSession) SafetyAddress() (common.Address, error) {
1052 return _Hermez.Contract.SafetyAddress(&_Hermez.CallOpts)
1053}
1054
1055// StateRoot is a free data retrieval call binding the contract method 0x9588eca2.
1056//
1057// Solidity: function stateRoot() view returns(uint256)
1058func (_Hermez *HermezCaller) StateRoot(opts *bind.CallOpts) (*big.Int, error) {
1059 var (
1060 ret0 = new(*big.Int)
1061 )
1062 out := ret0
1063 err := _Hermez.contract.Call(opts, out, "stateRoot")
1064 return *ret0, err
1065}
1066
1067// StateRoot is a free data retrieval call binding the contract method 0x9588eca2.
1068//
1069// Solidity: function stateRoot() view returns(uint256)
1070func (_Hermez *HermezSession) StateRoot() (*big.Int, error) {
1071 return _Hermez.Contract.StateRoot(&_Hermez.CallOpts)
1072}
1073
1074// StateRoot is a free data retrieval call binding the contract method 0x9588eca2.
1075//
1076// Solidity: function stateRoot() view returns(uint256)
1077func (_Hermez *HermezCallerSession) StateRoot() (*big.Int, error) {
1078 return _Hermez.Contract.StateRoot(&_Hermez.CallOpts)
1079}
1080
1081// TokenExchange is a free data retrieval call binding the contract method 0x0dd94b96.
1082//
1083// Solidity: function tokenExchange(address ) view returns(uint256)
1084func (_Hermez *HermezCaller) TokenExchange(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) {
1085 var (
1086 ret0 = new(*big.Int)
1087 )
1088 out := ret0
1089 err := _Hermez.contract.Call(opts, out, "tokenExchange", arg0)
1090 return *ret0, err
1091}
1092
1093// TokenExchange is a free data retrieval call binding the contract method 0x0dd94b96.
1094//
1095// Solidity: function tokenExchange(address ) view returns(uint256)
1096func (_Hermez *HermezSession) TokenExchange(arg0 common.Address) (*big.Int, error) {
1097 return _Hermez.Contract.TokenExchange(&_Hermez.CallOpts, arg0)
1098}
1099
1100// TokenExchange is a free data retrieval call binding the contract method 0x0dd94b96.
1101//
1102// Solidity: function tokenExchange(address ) view returns(uint256)
1103func (_Hermez *HermezCallerSession) TokenExchange(arg0 common.Address) (*big.Int, error) {
1104 return _Hermez.Contract.TokenExchange(&_Hermez.CallOpts, arg0)
1105}
1106
1107// TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
1108//
1109// Solidity: function tokenHEZ() view returns(address)
1110func (_Hermez *HermezCaller) TokenHEZ(opts *bind.CallOpts) (common.Address, error) {
1111 var (
1112 ret0 = new(common.Address)
1113 )
1114 out := ret0
1115 err := _Hermez.contract.Call(opts, out, "tokenHEZ")
1116 return *ret0, err
1117}
1118
1119// TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
1120//
1121// Solidity: function tokenHEZ() view returns(address)
1122func (_Hermez *HermezSession) TokenHEZ() (common.Address, error) {
1123 return _Hermez.Contract.TokenHEZ(&_Hermez.CallOpts)
1124}
1125
1126// TokenHEZ is a free data retrieval call binding the contract method 0x79a135e3.
1127//
1128// Solidity: function tokenHEZ() view returns(address)
1129func (_Hermez *HermezCallerSession) TokenHEZ() (common.Address, error) {
1130 return _Hermez.Contract.TokenHEZ(&_Hermez.CallOpts)
1131}
1132
1133// TokenList is a free data retrieval call binding the contract method 0x9ead7222.
1134//
1135// Solidity: function tokenList(uint256 ) view returns(address)
1136func (_Hermez *HermezCaller) TokenList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) {
1137 var (
1138 ret0 = new(common.Address)
1139 )
1140 out := ret0
1141 err := _Hermez.contract.Call(opts, out, "tokenList", arg0)
1142 return *ret0, err
1143}
1144
1145// TokenList is a free data retrieval call binding the contract method 0x9ead7222.
1146//
1147// Solidity: function tokenList(uint256 ) view returns(address)
1148func (_Hermez *HermezSession) TokenList(arg0 *big.Int) (common.Address, error) {
1149 return _Hermez.Contract.TokenList(&_Hermez.CallOpts, arg0)
1150}
1151
1152// TokenList is a free data retrieval call binding the contract method 0x9ead7222.
1153//
1154// Solidity: function tokenList(uint256 ) view returns(address)
1155func (_Hermez *HermezCallerSession) TokenList(arg0 *big.Int) (common.Address, error) {
1156 return _Hermez.Contract.TokenList(&_Hermez.CallOpts, arg0)
1157}
1158
1159// TokenMap is a free data retrieval call binding the contract method 0x004aca6e.
1160//
1161// Solidity: function tokenMap(address ) view returns(uint256)
1162func (_Hermez *HermezCaller) TokenMap(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) {
1163 var (
1164 ret0 = new(*big.Int)
1165 )
1166 out := ret0
1167 err := _Hermez.contract.Call(opts, out, "tokenMap", arg0)
1168 return *ret0, err
1169}
1170
1171// TokenMap is a free data retrieval call binding the contract method 0x004aca6e.
1172//
1173// Solidity: function tokenMap(address ) view returns(uint256)
1174func (_Hermez *HermezSession) TokenMap(arg0 common.Address) (*big.Int, error) {
1175 return _Hermez.Contract.TokenMap(&_Hermez.CallOpts, arg0)
1176}
1177
1178// TokenMap is a free data retrieval call binding the contract method 0x004aca6e.
1179//
1180// Solidity: function tokenMap(address ) view returns(uint256)
1181func (_Hermez *HermezCallerSession) TokenMap(arg0 common.Address) (*big.Int, error) {
1182 return _Hermez.Contract.TokenMap(&_Hermez.CallOpts, arg0)
1183}
1184
1185// WithdrawDelayerContract is a free data retrieval call binding the contract method 0x1b0a8223.
1186//
1187// Solidity: function withdrawDelayerContract() view returns(address)
1188func (_Hermez *HermezCaller) WithdrawDelayerContract(opts *bind.CallOpts) (common.Address, error) {
1189 var (
1190 ret0 = new(common.Address)
1191 )
1192 out := ret0
1193 err := _Hermez.contract.Call(opts, out, "withdrawDelayerContract")
1194 return *ret0, err
1195}
1196
1197// WithdrawDelayerContract is a free data retrieval call binding the contract method 0x1b0a8223.
1198//
1199// Solidity: function withdrawDelayerContract() view returns(address)
1200func (_Hermez *HermezSession) WithdrawDelayerContract() (common.Address, error) {
1201 return _Hermez.Contract.WithdrawDelayerContract(&_Hermez.CallOpts)
1202}
1203
1204// WithdrawDelayerContract is a free data retrieval call binding the contract method 0x1b0a8223.
1205//
1206// Solidity: function withdrawDelayerContract() view returns(address)
1207func (_Hermez *HermezCallerSession) WithdrawDelayerContract() (common.Address, error) {
1208 return _Hermez.Contract.WithdrawDelayerContract(&_Hermez.CallOpts)
1209}
1210
1211// WithdrawalDelay is a free data retrieval call binding the contract method 0xa7ab6961.
1212//
1213// Solidity: function withdrawalDelay() view returns(uint64)
1214func (_Hermez *HermezCaller) WithdrawalDelay(opts *bind.CallOpts) (uint64, error) {
1215 var (
1216 ret0 = new(uint64)
1217 )
1218 out := ret0
1219 err := _Hermez.contract.Call(opts, out, "withdrawalDelay")
1220 return *ret0, err
1221}
1222
1223// WithdrawalDelay is a free data retrieval call binding the contract method 0xa7ab6961.
1224//
1225// Solidity: function withdrawalDelay() view returns(uint64)
1226func (_Hermez *HermezSession) WithdrawalDelay() (uint64, error) {
1227 return _Hermez.Contract.WithdrawalDelay(&_Hermez.CallOpts)
1228}
1229
1230// WithdrawalDelay is a free data retrieval call binding the contract method 0xa7ab6961.
1231//
1232// Solidity: function withdrawalDelay() view returns(uint64)
1233func (_Hermez *HermezCallerSession) WithdrawalDelay() (uint64, error) {
1234 return _Hermez.Contract.WithdrawalDelay(&_Hermez.CallOpts)
1235}
1236
1237// AddToken is a paid mutator transaction binding the contract method 0xd48bfca7.
1238//
1239// Solidity: function addToken(address tokenAddress) payable returns()
1240func (_Hermez *HermezTransactor) AddToken(opts *bind.TransactOpts, tokenAddress common.Address) (*types.Transaction, error) {
1241 return _Hermez.contract.Transact(opts, "addToken", tokenAddress)
1242}
1243
1244// AddToken is a paid mutator transaction binding the contract method 0xd48bfca7.
1245//
1246// Solidity: function addToken(address tokenAddress) payable returns()
1247func (_Hermez *HermezSession) AddToken(tokenAddress common.Address) (*types.Transaction, error) {
1248 return _Hermez.Contract.AddToken(&_Hermez.TransactOpts, tokenAddress)
1249}
1250
1251// AddToken is a paid mutator transaction binding the contract method 0xd48bfca7.
1252//
1253// Solidity: function addToken(address tokenAddress) payable returns()
1254func (_Hermez *HermezTransactorSession) AddToken(tokenAddress common.Address) (*types.Transaction, error) {
1255 return _Hermez.Contract.AddToken(&_Hermez.TransactOpts, tokenAddress)
1256}
1257
1258// CreateAccountDeposit is a paid mutator transaction binding the contract method 0x30501fcb.
1259//
1260// Solidity: function createAccountDeposit(uint256 babyPubKey, uint16 loadAmountF, uint32 tokenID) payable returns()
1261func (_Hermez *HermezTransactor) CreateAccountDeposit(opts *bind.TransactOpts, babyPubKey *big.Int, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1262 return _Hermez.contract.Transact(opts, "createAccountDeposit", babyPubKey, loadAmountF, tokenID)
1263}
1264
1265// CreateAccountDeposit is a paid mutator transaction binding the contract method 0x30501fcb.
1266//
1267// Solidity: function createAccountDeposit(uint256 babyPubKey, uint16 loadAmountF, uint32 tokenID) payable returns()
1268func (_Hermez *HermezSession) CreateAccountDeposit(babyPubKey *big.Int, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1269 return _Hermez.Contract.CreateAccountDeposit(&_Hermez.TransactOpts, babyPubKey, loadAmountF, tokenID)
1270}
1271
1272// CreateAccountDeposit is a paid mutator transaction binding the contract method 0x30501fcb.
1273//
1274// Solidity: function createAccountDeposit(uint256 babyPubKey, uint16 loadAmountF, uint32 tokenID) payable returns()
1275func (_Hermez *HermezTransactorSession) CreateAccountDeposit(babyPubKey *big.Int, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1276 return _Hermez.Contract.CreateAccountDeposit(&_Hermez.TransactOpts, babyPubKey, loadAmountF, tokenID)
1277}
1278
1279// CreateAccountDepositFromRelayer is a paid mutator transaction binding the contract method 0xd7d207c0.
1280//
1281// Solidity: function createAccountDepositFromRelayer(bytes accountCreationAuthSig, uint256 babyPubKey, uint16 loadAmountF, uint32 tokenID) payable returns()
1282func (_Hermez *HermezTransactor) CreateAccountDepositFromRelayer(opts *bind.TransactOpts, accountCreationAuthSig []byte, babyPubKey *big.Int, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1283 return _Hermez.contract.Transact(opts, "createAccountDepositFromRelayer", accountCreationAuthSig, babyPubKey, loadAmountF, tokenID)
1284}
1285
1286// CreateAccountDepositFromRelayer is a paid mutator transaction binding the contract method 0xd7d207c0.
1287//
1288// Solidity: function createAccountDepositFromRelayer(bytes accountCreationAuthSig, uint256 babyPubKey, uint16 loadAmountF, uint32 tokenID) payable returns()
1289func (_Hermez *HermezSession) CreateAccountDepositFromRelayer(accountCreationAuthSig []byte, babyPubKey *big.Int, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1290 return _Hermez.Contract.CreateAccountDepositFromRelayer(&_Hermez.TransactOpts, accountCreationAuthSig, babyPubKey, loadAmountF, tokenID)
1291}
1292
1293// CreateAccountDepositFromRelayer is a paid mutator transaction binding the contract method 0xd7d207c0.
1294//
1295// Solidity: function createAccountDepositFromRelayer(bytes accountCreationAuthSig, uint256 babyPubKey, uint16 loadAmountF, uint32 tokenID) payable returns()
1296func (_Hermez *HermezTransactorSession) CreateAccountDepositFromRelayer(accountCreationAuthSig []byte, babyPubKey *big.Int, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1297 return _Hermez.Contract.CreateAccountDepositFromRelayer(&_Hermez.TransactOpts, accountCreationAuthSig, babyPubKey, loadAmountF, tokenID)
1298}
1299
1300// CreateAccountDepositTransfer is a paid mutator transaction binding the contract method 0x568bc1c5.
1301//
1302// Solidity: function createAccountDepositTransfer(uint256 babyPubKey, uint16 loadAmountF, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1303func (_Hermez *HermezTransactor) CreateAccountDepositTransfer(opts *bind.TransactOpts, babyPubKey *big.Int, loadAmountF uint16, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1304 return _Hermez.contract.Transact(opts, "createAccountDepositTransfer", babyPubKey, loadAmountF, amountF, tokenID, toIdx)
1305}
1306
1307// CreateAccountDepositTransfer is a paid mutator transaction binding the contract method 0x568bc1c5.
1308//
1309// Solidity: function createAccountDepositTransfer(uint256 babyPubKey, uint16 loadAmountF, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1310func (_Hermez *HermezSession) CreateAccountDepositTransfer(babyPubKey *big.Int, loadAmountF uint16, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1311 return _Hermez.Contract.CreateAccountDepositTransfer(&_Hermez.TransactOpts, babyPubKey, loadAmountF, amountF, tokenID, toIdx)
1312}
1313
1314// CreateAccountDepositTransfer is a paid mutator transaction binding the contract method 0x568bc1c5.
1315//
1316// Solidity: function createAccountDepositTransfer(uint256 babyPubKey, uint16 loadAmountF, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1317func (_Hermez *HermezTransactorSession) CreateAccountDepositTransfer(babyPubKey *big.Int, loadAmountF uint16, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1318 return _Hermez.Contract.CreateAccountDepositTransfer(&_Hermez.TransactOpts, babyPubKey, loadAmountF, amountF, tokenID, toIdx)
1319}
1320
1321// Deposit is a paid mutator transaction binding the contract method 0x363e2a22.
1322//
1323// Solidity: function deposit(uint32 fromIdx, uint16 loadAmountF, uint32 tokenID) payable returns()
1324func (_Hermez *HermezTransactor) Deposit(opts *bind.TransactOpts, fromIdx uint32, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1325 return _Hermez.contract.Transact(opts, "deposit", fromIdx, loadAmountF, tokenID)
1326}
1327
1328// Deposit is a paid mutator transaction binding the contract method 0x363e2a22.
1329//
1330// Solidity: function deposit(uint32 fromIdx, uint16 loadAmountF, uint32 tokenID) payable returns()
1331func (_Hermez *HermezSession) Deposit(fromIdx uint32, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1332 return _Hermez.Contract.Deposit(&_Hermez.TransactOpts, fromIdx, loadAmountF, tokenID)
1333}
1334
1335// Deposit is a paid mutator transaction binding the contract method 0x363e2a22.
1336//
1337// Solidity: function deposit(uint32 fromIdx, uint16 loadAmountF, uint32 tokenID) payable returns()
1338func (_Hermez *HermezTransactorSession) Deposit(fromIdx uint32, loadAmountF uint16, tokenID uint32) (*types.Transaction, error) {
1339 return _Hermez.Contract.Deposit(&_Hermez.TransactOpts, fromIdx, loadAmountF, tokenID)
1340}
1341
1342// DepositTransfer is a paid mutator transaction binding the contract method 0x9612518a.
1343//
1344// Solidity: function depositTransfer(uint32 fromIdx, uint16 loadAmountF, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1345func (_Hermez *HermezTransactor) DepositTransfer(opts *bind.TransactOpts, fromIdx uint32, loadAmountF uint16, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1346 return _Hermez.contract.Transact(opts, "depositTransfer", fromIdx, loadAmountF, amountF, tokenID, toIdx)
1347}
1348
1349// DepositTransfer is a paid mutator transaction binding the contract method 0x9612518a.
1350//
1351// Solidity: function depositTransfer(uint32 fromIdx, uint16 loadAmountF, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1352func (_Hermez *HermezSession) DepositTransfer(fromIdx uint32, loadAmountF uint16, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1353 return _Hermez.Contract.DepositTransfer(&_Hermez.TransactOpts, fromIdx, loadAmountF, amountF, tokenID, toIdx)
1354}
1355
1356// DepositTransfer is a paid mutator transaction binding the contract method 0x9612518a.
1357//
1358// Solidity: function depositTransfer(uint32 fromIdx, uint16 loadAmountF, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1359func (_Hermez *HermezTransactorSession) DepositTransfer(fromIdx uint32, loadAmountF uint16, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1360 return _Hermez.Contract.DepositTransfer(&_Hermez.TransactOpts, fromIdx, loadAmountF, amountF, tokenID, toIdx)
1361}
1362
1363// ForceExit is a paid mutator transaction binding the contract method 0xe6171150.
1364//
1365// Solidity: function forceExit(uint32 fromIdx, uint16 amountF, uint32 tokenID) payable returns()
1366func (_Hermez *HermezTransactor) ForceExit(opts *bind.TransactOpts, fromIdx uint32, amountF uint16, tokenID uint32) (*types.Transaction, error) {
1367 return _Hermez.contract.Transact(opts, "forceExit", fromIdx, amountF, tokenID)
1368}
1369
1370// ForceExit is a paid mutator transaction binding the contract method 0xe6171150.
1371//
1372// Solidity: function forceExit(uint32 fromIdx, uint16 amountF, uint32 tokenID) payable returns()
1373func (_Hermez *HermezSession) ForceExit(fromIdx uint32, amountF uint16, tokenID uint32) (*types.Transaction, error) {
1374 return _Hermez.Contract.ForceExit(&_Hermez.TransactOpts, fromIdx, amountF, tokenID)
1375}
1376
1377// ForceExit is a paid mutator transaction binding the contract method 0xe6171150.
1378//
1379// Solidity: function forceExit(uint32 fromIdx, uint16 amountF, uint32 tokenID) payable returns()
1380func (_Hermez *HermezTransactorSession) ForceExit(fromIdx uint32, amountF uint16, tokenID uint32) (*types.Transaction, error) {
1381 return _Hermez.Contract.ForceExit(&_Hermez.TransactOpts, fromIdx, amountF, tokenID)
1382}
1383
1384// ForceTransfer is a paid mutator transaction binding the contract method 0x3787f591.
1385//
1386// Solidity: function forceTransfer(uint32 fromIdx, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1387func (_Hermez *HermezTransactor) ForceTransfer(opts *bind.TransactOpts, fromIdx uint32, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1388 return _Hermez.contract.Transact(opts, "forceTransfer", fromIdx, amountF, tokenID, toIdx)
1389}
1390
1391// ForceTransfer is a paid mutator transaction binding the contract method 0x3787f591.
1392//
1393// Solidity: function forceTransfer(uint32 fromIdx, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1394func (_Hermez *HermezSession) ForceTransfer(fromIdx uint32, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1395 return _Hermez.Contract.ForceTransfer(&_Hermez.TransactOpts, fromIdx, amountF, tokenID, toIdx)
1396}
1397
1398// ForceTransfer is a paid mutator transaction binding the contract method 0x3787f591.
1399//
1400// Solidity: function forceTransfer(uint32 fromIdx, uint16 amountF, uint32 tokenID, uint32 toIdx) payable returns()
1401func (_Hermez *HermezTransactorSession) ForceTransfer(fromIdx uint32, amountF uint16, tokenID uint32, toIdx uint32) (*types.Transaction, error) {
1402 return _Hermez.Contract.ForceTransfer(&_Hermez.TransactOpts, fromIdx, amountF, tokenID, toIdx)
1403}
1404
1405// ForgeBatch is a paid mutator transaction binding the contract method 0xc8464ed1.
1406//
1407// Solidity: function forgeBatch(uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, uint32 newLastIdx, uint256 newStRoot, uint256 newExitRoot, bytes encodedL1CoordinatorTx, bytes l2TxsData, bytes feeIdxCoordinator, uint256 verifierIdx, bool l1Batch) returns()
1408func (_Hermez *HermezTransactor) ForgeBatch(opts *bind.TransactOpts, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, newLastIdx uint32, newStRoot *big.Int, newExitRoot *big.Int, encodedL1CoordinatorTx []byte, l2TxsData []byte, feeIdxCoordinator []byte, verifierIdx *big.Int, l1Batch bool) (*types.Transaction, error) {
1409 return _Hermez.contract.Transact(opts, "forgeBatch", proofA, proofB, proofC, newLastIdx, newStRoot, newExitRoot, encodedL1CoordinatorTx, l2TxsData, feeIdxCoordinator, verifierIdx, l1Batch)
1410}
1411
1412// ForgeBatch is a paid mutator transaction binding the contract method 0xc8464ed1.
1413//
1414// Solidity: function forgeBatch(uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, uint32 newLastIdx, uint256 newStRoot, uint256 newExitRoot, bytes encodedL1CoordinatorTx, bytes l2TxsData, bytes feeIdxCoordinator, uint256 verifierIdx, bool l1Batch) returns()
1415func (_Hermez *HermezSession) ForgeBatch(proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, newLastIdx uint32, newStRoot *big.Int, newExitRoot *big.Int, encodedL1CoordinatorTx []byte, l2TxsData []byte, feeIdxCoordinator []byte, verifierIdx *big.Int, l1Batch bool) (*types.Transaction, error) {
1416 return _Hermez.Contract.ForgeBatch(&_Hermez.TransactOpts, proofA, proofB, proofC, newLastIdx, newStRoot, newExitRoot, encodedL1CoordinatorTx, l2TxsData, feeIdxCoordinator, verifierIdx, l1Batch)
1417}
1418
1419// ForgeBatch is a paid mutator transaction binding the contract method 0xc8464ed1.
1420//
1421// Solidity: function forgeBatch(uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, uint32 newLastIdx, uint256 newStRoot, uint256 newExitRoot, bytes encodedL1CoordinatorTx, bytes l2TxsData, bytes feeIdxCoordinator, uint256 verifierIdx, bool l1Batch) returns()
1422func (_Hermez *HermezTransactorSession) ForgeBatch(proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, newLastIdx uint32, newStRoot *big.Int, newExitRoot *big.Int, encodedL1CoordinatorTx []byte, l2TxsData []byte, feeIdxCoordinator []byte, verifierIdx *big.Int, l1Batch bool) (*types.Transaction, error) {
1423 return _Hermez.Contract.ForgeBatch(&_Hermez.TransactOpts, proofA, proofB, proofC, newLastIdx, newStRoot, newExitRoot, encodedL1CoordinatorTx, l2TxsData, feeIdxCoordinator, verifierIdx, l1Batch)
1424}
1425
1426// Initialize is a paid mutator transaction binding the contract method 0xee67f32e.
1427//
1428// Solidity: function initialize(address[] _verifiers, uint256[] _maxTxVerifiers, address _tokenHEZ, address _governanceAddress, address _safetyAddress, address _hermezAuctionContract, address _withdrawDelayerContract, address _poseidon2Elements, address _poseidon3Elements, address _poseidon4Elements, uint256 _feeAddToken, uint256 _forgeL1L2BatchTimeout, uint64 _withdrawalDelay) returns()
1429func (_Hermez *HermezTransactor) Initialize(opts *bind.TransactOpts, _verifiers []common.Address, _maxTxVerifiers []*big.Int, _tokenHEZ common.Address, _governanceAddress common.Address, _safetyAddress common.Address, _hermezAuctionContract common.Address, _withdrawDelayerContract common.Address, _poseidon2Elements common.Address, _poseidon3Elements common.Address, _poseidon4Elements common.Address, _feeAddToken *big.Int, _forgeL1L2BatchTimeout *big.Int, _withdrawalDelay uint64) (*types.Transaction, error) {
1430 return _Hermez.contract.Transact(opts, "initialize", _verifiers, _maxTxVerifiers, _tokenHEZ, _governanceAddress, _safetyAddress, _hermezAuctionContract, _withdrawDelayerContract, _poseidon2Elements, _poseidon3Elements, _poseidon4Elements, _feeAddToken, _forgeL1L2BatchTimeout, _withdrawalDelay)
1431}
1432
1433// Initialize is a paid mutator transaction binding the contract method 0xee67f32e.
1434//
1435// Solidity: function initialize(address[] _verifiers, uint256[] _maxTxVerifiers, address _tokenHEZ, address _governanceAddress, address _safetyAddress, address _hermezAuctionContract, address _withdrawDelayerContract, address _poseidon2Elements, address _poseidon3Elements, address _poseidon4Elements, uint256 _feeAddToken, uint256 _forgeL1L2BatchTimeout, uint64 _withdrawalDelay) returns()
1436func (_Hermez *HermezSession) Initialize(_verifiers []common.Address, _maxTxVerifiers []*big.Int, _tokenHEZ common.Address, _governanceAddress common.Address, _safetyAddress common.Address, _hermezAuctionContract common.Address, _withdrawDelayerContract common.Address, _poseidon2Elements common.Address, _poseidon3Elements common.Address, _poseidon4Elements common.Address, _feeAddToken *big.Int, _forgeL1L2BatchTimeout *big.Int, _withdrawalDelay uint64) (*types.Transaction, error) {
1437 return _Hermez.Contract.Initialize(&_Hermez.TransactOpts, _verifiers, _maxTxVerifiers, _tokenHEZ, _governanceAddress, _safetyAddress, _hermezAuctionContract, _withdrawDelayerContract, _poseidon2Elements, _poseidon3Elements, _poseidon4Elements, _feeAddToken, _forgeL1L2BatchTimeout, _withdrawalDelay)
1438}
1439
1440// Initialize is a paid mutator transaction binding the contract method 0xee67f32e.
1441//
1442// Solidity: function initialize(address[] _verifiers, uint256[] _maxTxVerifiers, address _tokenHEZ, address _governanceAddress, address _safetyAddress, address _hermezAuctionContract, address _withdrawDelayerContract, address _poseidon2Elements, address _poseidon3Elements, address _poseidon4Elements, uint256 _feeAddToken, uint256 _forgeL1L2BatchTimeout, uint64 _withdrawalDelay) returns()
1443func (_Hermez *HermezTransactorSession) Initialize(_verifiers []common.Address, _maxTxVerifiers []*big.Int, _tokenHEZ common.Address, _governanceAddress common.Address, _safetyAddress common.Address, _hermezAuctionContract common.Address, _withdrawDelayerContract common.Address, _poseidon2Elements common.Address, _poseidon3Elements common.Address, _poseidon4Elements common.Address, _feeAddToken *big.Int, _forgeL1L2BatchTimeout *big.Int, _withdrawalDelay uint64) (*types.Transaction, error) {
1444 return _Hermez.Contract.Initialize(&_Hermez.TransactOpts, _verifiers, _maxTxVerifiers, _tokenHEZ, _governanceAddress, _safetyAddress, _hermezAuctionContract, _withdrawDelayerContract, _poseidon2Elements, _poseidon3Elements, _poseidon4Elements, _feeAddToken, _forgeL1L2BatchTimeout, _withdrawalDelay)
1445}
1446
1447// SafeMode is a paid mutator transaction binding the contract method 0xabe3219c.
1448//
1449// Solidity: function safeMode() returns()
1450func (_Hermez *HermezTransactor) SafeMode(opts *bind.TransactOpts) (*types.Transaction, error) {
1451 return _Hermez.contract.Transact(opts, "safeMode")
1452}
1453
1454// SafeMode is a paid mutator transaction binding the contract method 0xabe3219c.
1455//
1456// Solidity: function safeMode() returns()
1457func (_Hermez *HermezSession) SafeMode() (*types.Transaction, error) {
1458 return _Hermez.Contract.SafeMode(&_Hermez.TransactOpts)
1459}
1460
1461// SafeMode is a paid mutator transaction binding the contract method 0xabe3219c.
1462//
1463// Solidity: function safeMode() returns()
1464func (_Hermez *HermezTransactorSession) SafeMode() (*types.Transaction, error) {
1465 return _Hermez.Contract.SafeMode(&_Hermez.TransactOpts)
1466}
1467
1468// UpdateBucketsParameters is a paid mutator transaction binding the contract method 0x68e95e53.
1469//
1470// Solidity: function updateBucketsParameters(uint256[4][5] arrayBuckets) returns()
1471func (_Hermez *HermezTransactor) UpdateBucketsParameters(opts *bind.TransactOpts, arrayBuckets [5][4]*big.Int) (*types.Transaction, error) {
1472 return _Hermez.contract.Transact(opts, "updateBucketsParameters", arrayBuckets)
1473}
1474
1475// UpdateBucketsParameters is a paid mutator transaction binding the contract method 0x68e95e53.
1476//
1477// Solidity: function updateBucketsParameters(uint256[4][5] arrayBuckets) returns()
1478func (_Hermez *HermezSession) UpdateBucketsParameters(arrayBuckets [5][4]*big.Int) (*types.Transaction, error) {
1479 return _Hermez.Contract.UpdateBucketsParameters(&_Hermez.TransactOpts, arrayBuckets)
1480}
1481
1482// UpdateBucketsParameters is a paid mutator transaction binding the contract method 0x68e95e53.
1483//
1484// Solidity: function updateBucketsParameters(uint256[4][5] arrayBuckets) returns()
1485func (_Hermez *HermezTransactorSession) UpdateBucketsParameters(arrayBuckets [5][4]*big.Int) (*types.Transaction, error) {
1486 return _Hermez.Contract.UpdateBucketsParameters(&_Hermez.TransactOpts, arrayBuckets)
1487}
1488
1489// UpdateFeeAddToken is a paid mutator transaction binding the contract method 0x314e5eda.
1490//
1491// Solidity: function updateFeeAddToken(uint256 newFeeAddToken) returns()
1492func (_Hermez *HermezTransactor) UpdateFeeAddToken(opts *bind.TransactOpts, newFeeAddToken *big.Int) (*types.Transaction, error) {
1493 return _Hermez.contract.Transact(opts, "updateFeeAddToken", newFeeAddToken)
1494}
1495
1496// UpdateFeeAddToken is a paid mutator transaction binding the contract method 0x314e5eda.
1497//
1498// Solidity: function updateFeeAddToken(uint256 newFeeAddToken) returns()
1499func (_Hermez *HermezSession) UpdateFeeAddToken(newFeeAddToken *big.Int) (*types.Transaction, error) {
1500 return _Hermez.Contract.UpdateFeeAddToken(&_Hermez.TransactOpts, newFeeAddToken)
1501}
1502
1503// UpdateFeeAddToken is a paid mutator transaction binding the contract method 0x314e5eda.
1504//
1505// Solidity: function updateFeeAddToken(uint256 newFeeAddToken) returns()
1506func (_Hermez *HermezTransactorSession) UpdateFeeAddToken(newFeeAddToken *big.Int) (*types.Transaction, error) {
1507 return _Hermez.Contract.UpdateFeeAddToken(&_Hermez.TransactOpts, newFeeAddToken)
1508}
1509
1510// UpdateForgeL1L2BatchTimeout is a paid mutator transaction binding the contract method 0x39cd0581.
1511//
1512// Solidity: function updateForgeL1L2BatchTimeout(uint256 newForgeL1L2BatchTimeout) returns()
1513func (_Hermez *HermezTransactor) UpdateForgeL1L2BatchTimeout(opts *bind.TransactOpts, newForgeL1L2BatchTimeout *big.Int) (*types.Transaction, error) {
1514 return _Hermez.contract.Transact(opts, "updateForgeL1L2BatchTimeout", newForgeL1L2BatchTimeout)
1515}
1516
1517// UpdateForgeL1L2BatchTimeout is a paid mutator transaction binding the contract method 0x39cd0581.
1518//
1519// Solidity: function updateForgeL1L2BatchTimeout(uint256 newForgeL1L2BatchTimeout) returns()
1520func (_Hermez *HermezSession) UpdateForgeL1L2BatchTimeout(newForgeL1L2BatchTimeout *big.Int) (*types.Transaction, error) {
1521 return _Hermez.Contract.UpdateForgeL1L2BatchTimeout(&_Hermez.TransactOpts, newForgeL1L2BatchTimeout)
1522}
1523
1524// UpdateForgeL1L2BatchTimeout is a paid mutator transaction binding the contract method 0x39cd0581.
1525//
1526// Solidity: function updateForgeL1L2BatchTimeout(uint256 newForgeL1L2BatchTimeout) returns()
1527func (_Hermez *HermezTransactorSession) UpdateForgeL1L2BatchTimeout(newForgeL1L2BatchTimeout *big.Int) (*types.Transaction, error) {
1528 return _Hermez.Contract.UpdateForgeL1L2BatchTimeout(&_Hermez.TransactOpts, newForgeL1L2BatchTimeout)
1529}
1530
1531// UpdateTokenExchange is a paid mutator transaction binding the contract method 0xcadedd82.
1532//
1533// Solidity: function updateTokenExchange(address[] addressArray, uint256[] valueArray) returns()
1534func (_Hermez *HermezTransactor) UpdateTokenExchange(opts *bind.TransactOpts, addressArray []common.Address, valueArray []*big.Int) (*types.Transaction, error) {
1535 return _Hermez.contract.Transact(opts, "updateTokenExchange", addressArray, valueArray)
1536}
1537
1538// UpdateTokenExchange is a paid mutator transaction binding the contract method 0xcadedd82.
1539//
1540// Solidity: function updateTokenExchange(address[] addressArray, uint256[] valueArray) returns()
1541func (_Hermez *HermezSession) UpdateTokenExchange(addressArray []common.Address, valueArray []*big.Int) (*types.Transaction, error) {
1542 return _Hermez.Contract.UpdateTokenExchange(&_Hermez.TransactOpts, addressArray, valueArray)
1543}
1544
1545// UpdateTokenExchange is a paid mutator transaction binding the contract method 0xcadedd82.
1546//
1547// Solidity: function updateTokenExchange(address[] addressArray, uint256[] valueArray) returns()
1548func (_Hermez *HermezTransactorSession) UpdateTokenExchange(addressArray []common.Address, valueArray []*big.Int) (*types.Transaction, error) {
1549 return _Hermez.Contract.UpdateTokenExchange(&_Hermez.TransactOpts, addressArray, valueArray)
1550}
1551
1552// UpdateWithdrawalDelay is a paid mutator transaction binding the contract method 0xef4a5c4a.
1553//
1554// Solidity: function updateWithdrawalDelay(uint64 newWithdrawalDelay) returns()
1555func (_Hermez *HermezTransactor) UpdateWithdrawalDelay(opts *bind.TransactOpts, newWithdrawalDelay uint64) (*types.Transaction, error) {
1556 return _Hermez.contract.Transact(opts, "updateWithdrawalDelay", newWithdrawalDelay)
1557}
1558
1559// UpdateWithdrawalDelay is a paid mutator transaction binding the contract method 0xef4a5c4a.
1560//
1561// Solidity: function updateWithdrawalDelay(uint64 newWithdrawalDelay) returns()
1562func (_Hermez *HermezSession) UpdateWithdrawalDelay(newWithdrawalDelay uint64) (*types.Transaction, error) {
1563 return _Hermez.Contract.UpdateWithdrawalDelay(&_Hermez.TransactOpts, newWithdrawalDelay)
1564}
1565
1566// UpdateWithdrawalDelay is a paid mutator transaction binding the contract method 0xef4a5c4a.
1567//
1568// Solidity: function updateWithdrawalDelay(uint64 newWithdrawalDelay) returns()
1569func (_Hermez *HermezTransactorSession) UpdateWithdrawalDelay(newWithdrawalDelay uint64) (*types.Transaction, error) {
1570 return _Hermez.Contract.UpdateWithdrawalDelay(&_Hermez.TransactOpts, newWithdrawalDelay)
1571}
1572
1573// Withdraw is a paid mutator transaction binding the contract method 0xbe8e25db.
1574//
1575// Solidity: function withdraw(uint32 tokenID, uint192 balance, uint256 babyPubKey, uint256 numExitRoot, uint256[] siblings, uint256 idx, bool instantWithdraw) returns()
1576func (_Hermez *HermezTransactor) Withdraw(opts *bind.TransactOpts, tokenID uint32, balance *big.Int, babyPubKey *big.Int, numExitRoot *big.Int, siblings []*big.Int, idx *big.Int, instantWithdraw bool) (*types.Transaction, error) {
1577 return _Hermez.contract.Transact(opts, "withdraw", tokenID, balance, babyPubKey, numExitRoot, siblings, idx, instantWithdraw)
1578}
1579
1580// Withdraw is a paid mutator transaction binding the contract method 0xbe8e25db.
1581//
1582// Solidity: function withdraw(uint32 tokenID, uint192 balance, uint256 babyPubKey, uint256 numExitRoot, uint256[] siblings, uint256 idx, bool instantWithdraw) returns()
1583func (_Hermez *HermezSession) Withdraw(tokenID uint32, balance *big.Int, babyPubKey *big.Int, numExitRoot *big.Int, siblings []*big.Int, idx *big.Int, instantWithdraw bool) (*types.Transaction, error) {
1584 return _Hermez.Contract.Withdraw(&_Hermez.TransactOpts, tokenID, balance, babyPubKey, numExitRoot, siblings, idx, instantWithdraw)
1585}
1586
1587// Withdraw is a paid mutator transaction binding the contract method 0xbe8e25db.
1588//
1589// Solidity: function withdraw(uint32 tokenID, uint192 balance, uint256 babyPubKey, uint256 numExitRoot, uint256[] siblings, uint256 idx, bool instantWithdraw) returns()
1590func (_Hermez *HermezTransactorSession) Withdraw(tokenID uint32, balance *big.Int, babyPubKey *big.Int, numExitRoot *big.Int, siblings []*big.Int, idx *big.Int, instantWithdraw bool) (*types.Transaction, error) {
1591 return _Hermez.Contract.Withdraw(&_Hermez.TransactOpts, tokenID, balance, babyPubKey, numExitRoot, siblings, idx, instantWithdraw)
1592}
1593
1594// HermezAddTokenIterator is returned from FilterAddToken and is used to iterate over the raw logs and unpacked data for AddToken events raised by the Hermez contract.
1595type HermezAddTokenIterator struct {
1596 Event *HermezAddToken // Event containing the contract specifics and raw log
1597
1598 contract *bind.BoundContract // Generic contract to use for unpacking event data
1599 event string // Event name to use for unpacking event data
1600
1601 logs chan types.Log // Log channel receiving the found contract events
1602 sub ethereum.Subscription // Subscription for errors, completion and termination
1603 done bool // Whether the subscription completed delivering logs
1604 fail error // Occurred error to stop iteration
1605}
1606
1607// Next advances the iterator to the subsequent event, returning whether there
1608// are any more events found. In case of a retrieval or parsing error, false is
1609// returned and Error() can be queried for the exact failure.
1610func (it *HermezAddTokenIterator) Next() bool {
1611 // If the iterator failed, stop iterating
1612 if it.fail != nil {
1613 return false
1614 }
1615 // If the iterator completed, deliver directly whatever's available
1616 if it.done {
1617 select {
1618 case log := <-it.logs:
1619 it.Event = new(HermezAddToken)
1620 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1621 it.fail = err
1622 return false
1623 }
1624 it.Event.Raw = log
1625 return true
1626
1627 default:
1628 return false
1629 }
1630 }
1631 // Iterator still in progress, wait for either a data or an error event
1632 select {
1633 case log := <-it.logs:
1634 it.Event = new(HermezAddToken)
1635 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1636 it.fail = err
1637 return false
1638 }
1639 it.Event.Raw = log
1640 return true
1641
1642 case err := <-it.sub.Err():
1643 it.done = true
1644 it.fail = err
1645 return it.Next()
1646 }
1647}
1648
1649// Error returns any retrieval or parsing error occurred during filtering.
1650func (it *HermezAddTokenIterator) Error() error {
1651 return it.fail
1652}
1653
1654// Close terminates the iteration process, releasing any pending underlying
1655// resources.
1656func (it *HermezAddTokenIterator) Close() error {
1657 it.sub.Unsubscribe()
1658 return nil
1659}
1660
1661// HermezAddToken represents a AddToken event raised by the Hermez contract.
1662type HermezAddToken struct {
1663 TokenAddress common.Address
1664 TokenID uint32
1665 Raw types.Log // Blockchain specific contextual infos
1666}
1667
1668// FilterAddToken is a free log retrieval operation binding the contract event 0xcb73d161edb7cd4fb1d92fedfd2555384fd997fd44ab507656f8c81e15747dde.
1669//
1670// Solidity: event AddToken(address tokenAddress, uint32 tokenID)
1671func (_Hermez *HermezFilterer) FilterAddToken(opts *bind.FilterOpts) (*HermezAddTokenIterator, error) {
1672
1673 logs, sub, err := _Hermez.contract.FilterLogs(opts, "AddToken")
1674 if err != nil {
1675 return nil, err
1676 }
1677 return &HermezAddTokenIterator{contract: _Hermez.contract, event: "AddToken", logs: logs, sub: sub}, nil
1678}
1679
1680// WatchAddToken is a free log subscription operation binding the contract event 0xcb73d161edb7cd4fb1d92fedfd2555384fd997fd44ab507656f8c81e15747dde.
1681//
1682// Solidity: event AddToken(address tokenAddress, uint32 tokenID)
1683func (_Hermez *HermezFilterer) WatchAddToken(opts *bind.WatchOpts, sink chan<- *HermezAddToken) (event.Subscription, error) {
1684
1685 logs, sub, err := _Hermez.contract.WatchLogs(opts, "AddToken")
1686 if err != nil {
1687 return nil, err
1688 }
1689 return event.NewSubscription(func(quit <-chan struct{}) error {
1690 defer sub.Unsubscribe()
1691 for {
1692 select {
1693 case log := <-logs:
1694 // New log arrived, parse the event and forward to the user
1695 event := new(HermezAddToken)
1696 if err := _Hermez.contract.UnpackLog(event, "AddToken", log); err != nil {
1697 return err
1698 }
1699 event.Raw = log
1700
1701 select {
1702 case sink <- event:
1703 case err := <-sub.Err():
1704 return err
1705 case <-quit:
1706 return nil
1707 }
1708 case err := <-sub.Err():
1709 return err
1710 case <-quit:
1711 return nil
1712 }
1713 }
1714 }), nil
1715}
1716
1717// ParseAddToken is a log parse operation binding the contract event 0xcb73d161edb7cd4fb1d92fedfd2555384fd997fd44ab507656f8c81e15747dde.
1718//
1719// Solidity: event AddToken(address tokenAddress, uint32 tokenID)
1720func (_Hermez *HermezFilterer) ParseAddToken(log types.Log) (*HermezAddToken, error) {
1721 event := new(HermezAddToken)
1722 if err := _Hermez.contract.UnpackLog(event, "AddToken", log); err != nil {
1723 return nil, err
1724 }
1725 return event, nil
1726}
1727
1728// HermezForgeBatchIterator is returned from FilterForgeBatch and is used to iterate over the raw logs and unpacked data for ForgeBatch events raised by the Hermez contract.
1729type HermezForgeBatchIterator struct {
1730 Event *HermezForgeBatch // Event containing the contract specifics and raw log
1731
1732 contract *bind.BoundContract // Generic contract to use for unpacking event data
1733 event string // Event name to use for unpacking event data
1734
1735 logs chan types.Log // Log channel receiving the found contract events
1736 sub ethereum.Subscription // Subscription for errors, completion and termination
1737 done bool // Whether the subscription completed delivering logs
1738 fail error // Occurred error to stop iteration
1739}
1740
1741// Next advances the iterator to the subsequent event, returning whether there
1742// are any more events found. In case of a retrieval or parsing error, false is
1743// returned and Error() can be queried for the exact failure.
1744func (it *HermezForgeBatchIterator) Next() bool {
1745 // If the iterator failed, stop iterating
1746 if it.fail != nil {
1747 return false
1748 }
1749 // If the iterator completed, deliver directly whatever's available
1750 if it.done {
1751 select {
1752 case log := <-it.logs:
1753 it.Event = new(HermezForgeBatch)
1754 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1755 it.fail = err
1756 return false
1757 }
1758 it.Event.Raw = log
1759 return true
1760
1761 default:
1762 return false
1763 }
1764 }
1765 // Iterator still in progress, wait for either a data or an error event
1766 select {
1767 case log := <-it.logs:
1768 it.Event = new(HermezForgeBatch)
1769 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1770 it.fail = err
1771 return false
1772 }
1773 it.Event.Raw = log
1774 return true
1775
1776 case err := <-it.sub.Err():
1777 it.done = true
1778 it.fail = err
1779 return it.Next()
1780 }
1781}
1782
1783// Error returns any retrieval or parsing error occurred during filtering.
1784func (it *HermezForgeBatchIterator) Error() error {
1785 return it.fail
1786}
1787
1788// Close terminates the iteration process, releasing any pending underlying
1789// resources.
1790func (it *HermezForgeBatchIterator) Close() error {
1791 it.sub.Unsubscribe()
1792 return nil
1793}
1794
1795// HermezForgeBatch represents a ForgeBatch event raised by the Hermez contract.
1796type HermezForgeBatch struct {
1797 BatchNum *big.Int
1798 Raw types.Log // Blockchain specific contextual infos
1799}
1800
1801// FilterForgeBatch is a free log retrieval operation binding the contract event 0x9b346777a734ffed277bddd87dee3490eb9dcc5378c095eac5af3e0f5da04f41.
1802//
1803// Solidity: event ForgeBatch(uint256 batchNum)
1804func (_Hermez *HermezFilterer) FilterForgeBatch(opts *bind.FilterOpts) (*HermezForgeBatchIterator, error) {
1805
1806 logs, sub, err := _Hermez.contract.FilterLogs(opts, "ForgeBatch")
1807 if err != nil {
1808 return nil, err
1809 }
1810 return &HermezForgeBatchIterator{contract: _Hermez.contract, event: "ForgeBatch", logs: logs, sub: sub}, nil
1811}
1812
1813// WatchForgeBatch is a free log subscription operation binding the contract event 0x9b346777a734ffed277bddd87dee3490eb9dcc5378c095eac5af3e0f5da04f41.
1814//
1815// Solidity: event ForgeBatch(uint256 batchNum)
1816func (_Hermez *HermezFilterer) WatchForgeBatch(opts *bind.WatchOpts, sink chan<- *HermezForgeBatch) (event.Subscription, error) {
1817
1818 logs, sub, err := _Hermez.contract.WatchLogs(opts, "ForgeBatch")
1819 if err != nil {
1820 return nil, err
1821 }
1822 return event.NewSubscription(func(quit <-chan struct{}) error {
1823 defer sub.Unsubscribe()
1824 for {
1825 select {
1826 case log := <-logs:
1827 // New log arrived, parse the event and forward to the user
1828 event := new(HermezForgeBatch)
1829 if err := _Hermez.contract.UnpackLog(event, "ForgeBatch", log); err != nil {
1830 return err
1831 }
1832 event.Raw = log
1833
1834 select {
1835 case sink <- event:
1836 case err := <-sub.Err():
1837 return err
1838 case <-quit:
1839 return nil
1840 }
1841 case err := <-sub.Err():
1842 return err
1843 case <-quit:
1844 return nil
1845 }
1846 }
1847 }), nil
1848}
1849
1850// ParseForgeBatch is a log parse operation binding the contract event 0x9b346777a734ffed277bddd87dee3490eb9dcc5378c095eac5af3e0f5da04f41.
1851//
1852// Solidity: event ForgeBatch(uint256 batchNum)
1853func (_Hermez *HermezFilterer) ParseForgeBatch(log types.Log) (*HermezForgeBatch, error) {
1854 event := new(HermezForgeBatch)
1855 if err := _Hermez.contract.UnpackLog(event, "ForgeBatch", log); err != nil {
1856 return nil, err
1857 }
1858 return event, nil
1859}
1860
1861// HermezL1UserTxEventIterator is returned from FilterL1UserTxEvent and is used to iterate over the raw logs and unpacked data for L1UserTxEvent events raised by the Hermez contract.
1862type HermezL1UserTxEventIterator struct {
1863 Event *HermezL1UserTxEvent // Event containing the contract specifics and raw log
1864
1865 contract *bind.BoundContract // Generic contract to use for unpacking event data
1866 event string // Event name to use for unpacking event data
1867
1868 logs chan types.Log // Log channel receiving the found contract events
1869 sub ethereum.Subscription // Subscription for errors, completion and termination
1870 done bool // Whether the subscription completed delivering logs
1871 fail error // Occurred error to stop iteration
1872}
1873
1874// Next advances the iterator to the subsequent event, returning whether there
1875// are any more events found. In case of a retrieval or parsing error, false is
1876// returned and Error() can be queried for the exact failure.
1877func (it *HermezL1UserTxEventIterator) Next() bool {
1878 // If the iterator failed, stop iterating
1879 if it.fail != nil {
1880 return false
1881 }
1882 // If the iterator completed, deliver directly whatever's available
1883 if it.done {
1884 select {
1885 case log := <-it.logs:
1886 it.Event = new(HermezL1UserTxEvent)
1887 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1888 it.fail = err
1889 return false
1890 }
1891 it.Event.Raw = log
1892 return true
1893
1894 default:
1895 return false
1896 }
1897 }
1898 // Iterator still in progress, wait for either a data or an error event
1899 select {
1900 case log := <-it.logs:
1901 it.Event = new(HermezL1UserTxEvent)
1902 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
1903 it.fail = err
1904 return false
1905 }
1906 it.Event.Raw = log
1907 return true
1908
1909 case err := <-it.sub.Err():
1910 it.done = true
1911 it.fail = err
1912 return it.Next()
1913 }
1914}
1915
1916// Error returns any retrieval or parsing error occurred during filtering.
1917func (it *HermezL1UserTxEventIterator) Error() error {
1918 return it.fail
1919}
1920
1921// Close terminates the iteration process, releasing any pending underlying
1922// resources.
1923func (it *HermezL1UserTxEventIterator) Close() error {
1924 it.sub.Unsubscribe()
1925 return nil
1926}
1927
1928// HermezL1UserTxEvent represents a L1UserTxEvent event raised by the Hermez contract.
1929type HermezL1UserTxEvent struct {
1930 L1UserTx []byte
1931 QueueIndex *big.Int
1932 TransactionIndex *big.Int
1933 Raw types.Log // Blockchain specific contextual infos
1934}
1935
1936// FilterL1UserTxEvent is a free log retrieval operation binding the contract event 0x44ed7960659190edb7acf74ac1bd6c7e8803bfa3aebe02c4599a0770fac3f884.
1937//
1938// Solidity: event L1UserTxEvent(bytes l1UserTx, uint256 indexed queueIndex, uint256 indexed transactionIndex)
1939func (_Hermez *HermezFilterer) FilterL1UserTxEvent(opts *bind.FilterOpts, queueIndex []*big.Int, transactionIndex []*big.Int) (*HermezL1UserTxEventIterator, error) {
1940
1941 var queueIndexRule []interface{}
1942 for _, queueIndexItem := range queueIndex {
1943 queueIndexRule = append(queueIndexRule, queueIndexItem)
1944 }
1945 var transactionIndexRule []interface{}
1946 for _, transactionIndexItem := range transactionIndex {
1947 transactionIndexRule = append(transactionIndexRule, transactionIndexItem)
1948 }
1949
1950 logs, sub, err := _Hermez.contract.FilterLogs(opts, "L1UserTxEvent", queueIndexRule, transactionIndexRule)
1951 if err != nil {
1952 return nil, err
1953 }
1954 return &HermezL1UserTxEventIterator{contract: _Hermez.contract, event: "L1UserTxEvent", logs: logs, sub: sub}, nil
1955}
1956
1957// WatchL1UserTxEvent is a free log subscription operation binding the contract event 0x44ed7960659190edb7acf74ac1bd6c7e8803bfa3aebe02c4599a0770fac3f884.
1958//
1959// Solidity: event L1UserTxEvent(bytes l1UserTx, uint256 indexed queueIndex, uint256 indexed transactionIndex)
1960func (_Hermez *HermezFilterer) WatchL1UserTxEvent(opts *bind.WatchOpts, sink chan<- *HermezL1UserTxEvent, queueIndex []*big.Int, transactionIndex []*big.Int) (event.Subscription, error) {
1961
1962 var queueIndexRule []interface{}
1963 for _, queueIndexItem := range queueIndex {
1964 queueIndexRule = append(queueIndexRule, queueIndexItem)
1965 }
1966 var transactionIndexRule []interface{}
1967 for _, transactionIndexItem := range transactionIndex {
1968 transactionIndexRule = append(transactionIndexRule, transactionIndexItem)
1969 }
1970
1971 logs, sub, err := _Hermez.contract.WatchLogs(opts, "L1UserTxEvent", queueIndexRule, transactionIndexRule)
1972 if err != nil {
1973 return nil, err
1974 }
1975 return event.NewSubscription(func(quit <-chan struct{}) error {
1976 defer sub.Unsubscribe()
1977 for {
1978 select {
1979 case log := <-logs:
1980 // New log arrived, parse the event and forward to the user
1981 event := new(HermezL1UserTxEvent)
1982 if err := _Hermez.contract.UnpackLog(event, "L1UserTxEvent", log); err != nil {
1983 return err
1984 }
1985 event.Raw = log
1986
1987 select {
1988 case sink <- event:
1989 case err := <-sub.Err():
1990 return err
1991 case <-quit:
1992 return nil
1993 }
1994 case err := <-sub.Err():
1995 return err
1996 case <-quit:
1997 return nil
1998 }
1999 }
2000 }), nil
2001}
2002
2003// ParseL1UserTxEvent is a log parse operation binding the contract event 0x44ed7960659190edb7acf74ac1bd6c7e8803bfa3aebe02c4599a0770fac3f884.
2004//
2005// Solidity: event L1UserTxEvent(bytes l1UserTx, uint256 indexed queueIndex, uint256 indexed transactionIndex)
2006func (_Hermez *HermezFilterer) ParseL1UserTxEvent(log types.Log) (*HermezL1UserTxEvent, error) {
2007 event := new(HermezL1UserTxEvent)
2008 if err := _Hermez.contract.UnpackLog(event, "L1UserTxEvent", log); err != nil {
2009 return nil, err
2010 }
2011 return event, nil
2012}
2013
2014// HermezUpdateFeeAddTokenIterator is returned from FilterUpdateFeeAddToken and is used to iterate over the raw logs and unpacked data for UpdateFeeAddToken events raised by the Hermez contract.
2015type HermezUpdateFeeAddTokenIterator struct {
2016 Event *HermezUpdateFeeAddToken // Event containing the contract specifics and raw log
2017
2018 contract *bind.BoundContract // Generic contract to use for unpacking event data
2019 event string // Event name to use for unpacking event data
2020
2021 logs chan types.Log // Log channel receiving the found contract events
2022 sub ethereum.Subscription // Subscription for errors, completion and termination
2023 done bool // Whether the subscription completed delivering logs
2024 fail error // Occurred error to stop iteration
2025}
2026
2027// Next advances the iterator to the subsequent event, returning whether there
2028// are any more events found. In case of a retrieval or parsing error, false is
2029// returned and Error() can be queried for the exact failure.
2030func (it *HermezUpdateFeeAddTokenIterator) Next() bool {
2031 // If the iterator failed, stop iterating
2032 if it.fail != nil {
2033 return false
2034 }
2035 // If the iterator completed, deliver directly whatever's available
2036 if it.done {
2037 select {
2038 case log := <-it.logs:
2039 it.Event = new(HermezUpdateFeeAddToken)
2040 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
2041 it.fail = err
2042 return false
2043 }
2044 it.Event.Raw = log
2045 return true
2046
2047 default:
2048 return false
2049 }
2050 }
2051 // Iterator still in progress, wait for either a data or an error event
2052 select {
2053 case log := <-it.logs:
2054 it.Event = new(HermezUpdateFeeAddToken)
2055 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
2056 it.fail = err
2057 return false
2058 }
2059 it.Event.Raw = log
2060 return true
2061
2062 case err := <-it.sub.Err():
2063 it.done = true
2064 it.fail = err
2065 return it.Next()
2066 }
2067}
2068
2069// Error returns any retrieval or parsing error occurred during filtering.
2070func (it *HermezUpdateFeeAddTokenIterator) Error() error {
2071 return it.fail
2072}
2073
2074// Close terminates the iteration process, releasing any pending underlying
2075// resources.
2076func (it *HermezUpdateFeeAddTokenIterator) Close() error {
2077 it.sub.Unsubscribe()
2078 return nil
2079}
2080
2081// HermezUpdateFeeAddToken represents a UpdateFeeAddToken event raised by the Hermez contract.
2082type HermezUpdateFeeAddToken struct {
2083 NewFeeAddToken *big.Int
2084 Raw types.Log // Blockchain specific contextual infos
2085}
2086
2087// FilterUpdateFeeAddToken is a free log retrieval operation binding the contract event 0xd1c873cd16013f0dc5f37992c0d12794389698512895ec036a568e393b46e3c1.
2088//
2089// Solidity: event UpdateFeeAddToken(uint256 newFeeAddToken)
2090func (_Hermez *HermezFilterer) FilterUpdateFeeAddToken(opts *bind.FilterOpts) (*HermezUpdateFeeAddTokenIterator, error) {
2091
2092 logs, sub, err := _Hermez.contract.FilterLogs(opts, "UpdateFeeAddToken")
2093 if err != nil {
2094 return nil, err
2095 }
2096 return &HermezUpdateFeeAddTokenIterator{contract: _Hermez.contract, event: "UpdateFeeAddToken", logs: logs, sub: sub}, nil
2097}
2098
2099// WatchUpdateFeeAddToken is a free log subscription operation binding the contract event 0xd1c873cd16013f0dc5f37992c0d12794389698512895ec036a568e393b46e3c1.
2100//
2101// Solidity: event UpdateFeeAddToken(uint256 newFeeAddToken)
2102func (_Hermez *HermezFilterer) WatchUpdateFeeAddToken(opts *bind.WatchOpts, sink chan<- *HermezUpdateFeeAddToken) (event.Subscription, error) {
2103
2104 logs, sub, err := _Hermez.contract.WatchLogs(opts, "UpdateFeeAddToken")
2105 if err != nil {
2106 return nil, err
2107 }
2108 return event.NewSubscription(func(quit <-chan struct{}) error {
2109 defer sub.Unsubscribe()
2110 for {
2111 select {
2112 case log := <-logs:
2113 // New log arrived, parse the event and forward to the user
2114 event := new(HermezUpdateFeeAddToken)
2115 if err := _Hermez.contract.UnpackLog(event, "UpdateFeeAddToken", log); err != nil {
2116 return err
2117 }
2118 event.Raw = log
2119
2120 select {
2121 case sink <- event:
2122 case err := <-sub.Err():
2123 return err
2124 case <-quit:
2125 return nil
2126 }
2127 case err := <-sub.Err():
2128 return err
2129 case <-quit:
2130 return nil
2131 }
2132 }
2133 }), nil
2134}
2135
2136// ParseUpdateFeeAddToken is a log parse operation binding the contract event 0xd1c873cd16013f0dc5f37992c0d12794389698512895ec036a568e393b46e3c1.
2137//
2138// Solidity: event UpdateFeeAddToken(uint256 newFeeAddToken)
2139func (_Hermez *HermezFilterer) ParseUpdateFeeAddToken(log types.Log) (*HermezUpdateFeeAddToken, error) {
2140 event := new(HermezUpdateFeeAddToken)
2141 if err := _Hermez.contract.UnpackLog(event, "UpdateFeeAddToken", log); err != nil {
2142 return nil, err
2143 }
2144 return event, nil
2145}
2146
2147// HermezUpdateForgeL1L2BatchTimeoutIterator is returned from FilterUpdateForgeL1L2BatchTimeout and is used to iterate over the raw logs and unpacked data for UpdateForgeL1L2BatchTimeout events raised by the Hermez contract.
2148type HermezUpdateForgeL1L2BatchTimeoutIterator struct {
2149 Event *HermezUpdateForgeL1L2BatchTimeout // Event containing the contract specifics and raw log
2150
2151 contract *bind.BoundContract // Generic contract to use for unpacking event data
2152 event string // Event name to use for unpacking event data
2153
2154 logs chan types.Log // Log channel receiving the found contract events
2155 sub ethereum.Subscription // Subscription for errors, completion and termination
2156 done bool // Whether the subscription completed delivering logs
2157 fail error // Occurred error to stop iteration
2158}
2159
2160// Next advances the iterator to the subsequent event, returning whether there
2161// are any more events found. In case of a retrieval or parsing error, false is
2162// returned and Error() can be queried for the exact failure.
2163func (it *HermezUpdateForgeL1L2BatchTimeoutIterator) Next() bool {
2164 // If the iterator failed, stop iterating
2165 if it.fail != nil {
2166 return false
2167 }
2168 // If the iterator completed, deliver directly whatever's available
2169 if it.done {
2170 select {
2171 case log := <-it.logs:
2172 it.Event = new(HermezUpdateForgeL1L2BatchTimeout)
2173 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
2174 it.fail = err
2175 return false
2176 }
2177 it.Event.Raw = log
2178 return true
2179
2180 default:
2181 return false
2182 }
2183 }
2184 // Iterator still in progress, wait for either a data or an error event
2185 select {
2186 case log := <-it.logs:
2187 it.Event = new(HermezUpdateForgeL1L2BatchTimeout)
2188 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
2189 it.fail = err
2190 return false
2191 }
2192 it.Event.Raw = log
2193 return true
2194
2195 case err := <-it.sub.Err():
2196 it.done = true
2197 it.fail = err
2198 return it.Next()
2199 }
2200}
2201
2202// Error returns any retrieval or parsing error occurred during filtering.
2203func (it *HermezUpdateForgeL1L2BatchTimeoutIterator) Error() error {
2204 return it.fail
2205}
2206
2207// Close terminates the iteration process, releasing any pending underlying
2208// resources.
2209func (it *HermezUpdateForgeL1L2BatchTimeoutIterator) Close() error {
2210 it.sub.Unsubscribe()
2211 return nil
2212}
2213
2214// HermezUpdateForgeL1L2BatchTimeout represents a UpdateForgeL1L2BatchTimeout event raised by the Hermez contract.
2215type HermezUpdateForgeL1L2BatchTimeout struct {
2216 NewForgeL1L2BatchTimeout *big.Int
2217 Raw types.Log // Blockchain specific contextual infos
2218}
2219
2220// FilterUpdateForgeL1L2BatchTimeout is a free log retrieval operation binding the contract event 0x6df2dd186033d1083891be7a27ab27fd480094118e909a1780f9c2a2c49a7aa0.
2221//
2222// Solidity: event UpdateForgeL1L2BatchTimeout(uint256 newForgeL1L2BatchTimeout)
2223func (_Hermez *HermezFilterer) FilterUpdateForgeL1L2BatchTimeout(opts *bind.FilterOpts) (*HermezUpdateForgeL1L2BatchTimeoutIterator, error) {
2224
2225 logs, sub, err := _Hermez.contract.FilterLogs(opts, "UpdateForgeL1L2BatchTimeout")
2226 if err != nil {
2227 return nil, err
2228 }
2229 return &HermezUpdateForgeL1L2BatchTimeoutIterator{contract: _Hermez.contract, event: "UpdateForgeL1L2BatchTimeout", logs: logs, sub: sub}, nil
2230}
2231
2232// WatchUpdateForgeL1L2BatchTimeout is a free log subscription operation binding the contract event 0x6df2dd186033d1083891be7a27ab27fd480094118e909a1780f9c2a2c49a7aa0.
2233//
2234// Solidity: event UpdateForgeL1L2BatchTimeout(uint256 newForgeL1L2BatchTimeout)
2235func (_Hermez *HermezFilterer) WatchUpdateForgeL1L2BatchTimeout(opts *bind.WatchOpts, sink chan<- *HermezUpdateForgeL1L2BatchTimeout) (event.Subscription, error) {
2236
2237 logs, sub, err := _Hermez.contract.WatchLogs(opts, "UpdateForgeL1L2BatchTimeout")
2238 if err != nil {
2239 return nil, err
2240 }
2241 return event.NewSubscription(func(quit <-chan struct{}) error {
2242 defer sub.Unsubscribe()
2243 for {
2244 select {
2245 case log := <-logs:
2246 // New log arrived, parse the event and forward to the user
2247 event := new(HermezUpdateForgeL1L2BatchTimeout)
2248 if err := _Hermez.contract.UnpackLog(event, "UpdateForgeL1L2BatchTimeout", log); err != nil {
2249 return err
2250 }
2251 event.Raw = log
2252
2253 select {
2254 case sink <- event:
2255 case err := <-sub.Err():
2256 return err
2257 case <-quit:
2258 return nil
2259 }
2260 case err := <-sub.Err():
2261 return err
2262 case <-quit:
2263 return nil
2264 }
2265 }
2266 }), nil
2267}
2268
2269// ParseUpdateForgeL1L2BatchTimeout is a log parse operation binding the contract event 0x6df2dd186033d1083891be7a27ab27fd480094118e909a1780f9c2a2c49a7aa0.
2270//
2271// Solidity: event UpdateForgeL1L2BatchTimeout(uint256 newForgeL1L2BatchTimeout)
2272func (_Hermez *HermezFilterer) ParseUpdateForgeL1L2BatchTimeout(log types.Log) (*HermezUpdateForgeL1L2BatchTimeout, error) {
2273 event := new(HermezUpdateForgeL1L2BatchTimeout)
2274 if err := _Hermez.contract.UnpackLog(event, "UpdateForgeL1L2BatchTimeout", log); err != nil {
2275 return nil, err
2276 }
2277 return event, nil
2278}
2279
2280// HermezWithdrawEventIterator is returned from FilterWithdrawEvent and is used to iterate over the raw logs and unpacked data for WithdrawEvent events raised by the Hermez contract.
2281type HermezWithdrawEventIterator struct {
2282 Event *HermezWithdrawEvent // Event containing the contract specifics and raw log
2283
2284 contract *bind.BoundContract // Generic contract to use for unpacking event data
2285 event string // Event name to use for unpacking event data
2286
2287 logs chan types.Log // Log channel receiving the found contract events
2288 sub ethereum.Subscription // Subscription for errors, completion and termination
2289 done bool // Whether the subscription completed delivering logs
2290 fail error // Occurred error to stop iteration
2291}
2292
2293// Next advances the iterator to the subsequent event, returning whether there
2294// are any more events found. In case of a retrieval or parsing error, false is
2295// returned and Error() can be queried for the exact failure.
2296func (it *HermezWithdrawEventIterator) Next() bool {
2297 // If the iterator failed, stop iterating
2298 if it.fail != nil {
2299 return false
2300 }
2301 // If the iterator completed, deliver directly whatever's available
2302 if it.done {
2303 select {
2304 case log := <-it.logs:
2305 it.Event = new(HermezWithdrawEvent)
2306 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
2307 it.fail = err
2308 return false
2309 }
2310 it.Event.Raw = log
2311 return true
2312
2313 default:
2314 return false
2315 }
2316 }
2317 // Iterator still in progress, wait for either a data or an error event
2318 select {
2319 case log := <-it.logs:
2320 it.Event = new(HermezWithdrawEvent)
2321 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
2322 it.fail = err
2323 return false
2324 }
2325 it.Event.Raw = log
2326 return true
2327
2328 case err := <-it.sub.Err():
2329 it.done = true
2330 it.fail = err
2331 return it.Next()
2332 }
2333}
2334
2335// Error returns any retrieval or parsing error occurred during filtering.
2336func (it *HermezWithdrawEventIterator) Error() error {
2337 return it.fail
2338}
2339
2340// Close terminates the iteration process, releasing any pending underlying
2341// resources.
2342func (it *HermezWithdrawEventIterator) Close() error {
2343 it.sub.Unsubscribe()
2344 return nil
2345}
2346
2347// HermezWithdrawEvent represents a WithdrawEvent event raised by the Hermez contract.
2348type HermezWithdrawEvent struct {
2349 Idx *big.Int
2350 NumExitRoot *big.Int
2351 InstantWithdraw bool
2352 Raw types.Log // Blockchain specific contextual infos
2353}
2354
2355// FilterWithdrawEvent is a free log retrieval operation binding the contract event 0x1b9bced8515592200c493bd85d3b9e8508df7ea146ee075c252f034d226fdac6.
2356//
2357// Solidity: event WithdrawEvent(uint256 indexed idx, uint256 indexed numExitRoot, bool indexed instantWithdraw)
2358func (_Hermez *HermezFilterer) FilterWithdrawEvent(opts *bind.FilterOpts, idx []*big.Int, numExitRoot []*big.Int, instantWithdraw []bool) (*HermezWithdrawEventIterator, error) {
2359
2360 var idxRule []interface{}
2361 for _, idxItem := range idx {
2362 idxRule = append(idxRule, idxItem)
2363 }
2364 var numExitRootRule []interface{}
2365 for _, numExitRootItem := range numExitRoot {
2366 numExitRootRule = append(numExitRootRule, numExitRootItem)
2367 }
2368 var instantWithdrawRule []interface{}
2369 for _, instantWithdrawItem := range instantWithdraw {
2370 instantWithdrawRule = append(instantWithdrawRule, instantWithdrawItem)
2371 }
2372
2373 logs, sub, err := _Hermez.contract.FilterLogs(opts, "WithdrawEvent", idxRule, numExitRootRule, instantWithdrawRule)
2374 if err != nil {
2375 return nil, err
2376 }
2377 return &HermezWithdrawEventIterator{contract: _Hermez.contract, event: "WithdrawEvent", logs: logs, sub: sub}, nil
2378}
2379
2380// WatchWithdrawEvent is a free log subscription operation binding the contract event 0x1b9bced8515592200c493bd85d3b9e8508df7ea146ee075c252f034d226fdac6.
2381//
2382// Solidity: event WithdrawEvent(uint256 indexed idx, uint256 indexed numExitRoot, bool indexed instantWithdraw)
2383func (_Hermez *HermezFilterer) WatchWithdrawEvent(opts *bind.WatchOpts, sink chan<- *HermezWithdrawEvent, idx []*big.Int, numExitRoot []*big.Int, instantWithdraw []bool) (event.Subscription, error) {
2384
2385 var idxRule []interface{}
2386 for _, idxItem := range idx {
2387 idxRule = append(idxRule, idxItem)
2388 }
2389 var numExitRootRule []interface{}
2390 for _, numExitRootItem := range numExitRoot {
2391 numExitRootRule = append(numExitRootRule, numExitRootItem)
2392 }
2393 var instantWithdrawRule []interface{}
2394 for _, instantWithdrawItem := range instantWithdraw {
2395 instantWithdrawRule = append(instantWithdrawRule, instantWithdrawItem)
2396 }
2397
2398 logs, sub, err := _Hermez.contract.WatchLogs(opts, "WithdrawEvent", idxRule, numExitRootRule, instantWithdrawRule)
2399 if err != nil {
2400 return nil, err
2401 }
2402 return event.NewSubscription(func(quit <-chan struct{}) error {
2403 defer sub.Unsubscribe()
2404 for {
2405 select {
2406 case log := <-logs:
2407 // New log arrived, parse the event and forward to the user
2408 event := new(HermezWithdrawEvent)
2409 if err := _Hermez.contract.UnpackLog(event, "WithdrawEvent", log); err != nil {
2410 return err
2411 }
2412 event.Raw = log
2413
2414 select {
2415 case sink <- event:
2416 case err := <-sub.Err():
2417 return err
2418 case <-quit:
2419 return nil
2420 }
2421 case err := <-sub.Err():
2422 return err
2423 case <-quit:
2424 return nil
2425 }
2426 }
2427 }), nil
2428}
2429
2430// ParseWithdrawEvent is a log parse operation binding the contract event 0x1b9bced8515592200c493bd85d3b9e8508df7ea146ee075c252f034d226fdac6.
2431//
2432// Solidity: event WithdrawEvent(uint256 indexed idx, uint256 indexed numExitRoot, bool indexed instantWithdraw)
2433func (_Hermez *HermezFilterer) ParseWithdrawEvent(log types.Log) (*HermezWithdrawEvent, error) {
2434 event := new(HermezWithdrawEvent)
2435 if err := _Hermez.contract.UnpackLog(event, "WithdrawEvent", log); err != nil {
2436 return nil, err
2437 }
2438 return event, nil
2439}