billingmanager

package
v0.0.0-...-bdefaf9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 19, 2024 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var BillingManagerABI = BillingManagerMetaData.ABI

BillingManagerABI is the input ABI used to generate the binding from. Deprecated: Use BillingManagerMetaData.ABI instead.

View Source
var BillingManagerBin = BillingManagerMetaData.Bin

BillingManagerBin is the compiled bytecode used for deploying new contracts. Deprecated: Use BillingManagerMetaData.Bin instead.

View Source
var BillingManagerMetaData = &bind.MetaData{
	ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tokensSender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"depositRecipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"depositAmount\",\"type\":\"uint256\"}],\"name\":\"AssetDeposited\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"tokenAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"workflowExecutionDiscount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"networkRewards\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isPermitable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"indexed\":false,\"internalType\":\"structIBillingManager.DepositAssetData\",\"name\":\"depositAssetData\",\"type\":\"tuple\"}],\"name\":\"DepositAssetAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"newEnabledStatus\",\"type\":\"bool\"}],\"name\":\"DepositAssetEnabledStatusUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"userAddr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amountToWithdraw\",\"type\":\"uint256\"}],\"name\":\"NetworkWithdrawCompleted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientAddr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"rewardsAmount\",\"type\":\"uint256\"}],\"name\":\"RewardsWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"userAddr\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"withdrawnAmount\",\"type\":\"uint256\"}],\"name\":\"UserFundsWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newWorkflowExecutionDiscount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"prevWorkflowExecutionDiscount\",\"type\":\"uint256\"}],\"name\":\"WorkflowExecutionDiscountUpdated\",\"type\":\"event\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"tokenAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"workflowExecutionDiscount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"networkRewards\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isPermitable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"internalType\":\"structIBillingManager.DepositAssetData\",\"name\":\"depositAssetData\",\"type\":\"tuple\"}],\"internalType\":\"structIBillingManager.DepositAssetInfo[]\",\"name\":\"_depositAssetInfoArr\",\"type\":\"tuple[]\"}],\"name\":\"addDepositAssets\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_recipientAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_depositAmount\",\"type\":\"uint256\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_recipientAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_depositAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_sigExpirationTime\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"_v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"_r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"depositWithPermit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"_depositAssetKeysArr\",\"type\":\"string[]\"}],\"name\":\"getDepositAssetsInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"tokenAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"workflowExecutionDiscount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"networkRewards\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isPermitable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"internalType\":\"structIBillingManager.DepositAssetData\",\"name\":\"depositAssetData\",\"type\":\"tuple\"}],\"internalType\":\"structIBillingManager.DepositAssetInfo[]\",\"name\":\"_depositAssetsInfoArr\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_offset\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_limit\",\"type\":\"uint256\"}],\"name\":\"getExistingUsers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInjector\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"injector_\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"getNetworkRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSupportedDepositAssetKeys\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTotalUsersCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_userAddr\",\"type\":\"address\"}],\"name\":\"getUserDepositAssetKeys\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_userAddr\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"getUserDepositInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"userAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"userDepositedAmount\",\"type\":\"uint256\"}],\"internalType\":\"structIBillingManager.UserDepositInfo\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_userAddr\",\"type\":\"address\"}],\"name\":\"getUserWithdrawNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_offset\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_limit\",\"type\":\"uint256\"}],\"name\":\"getUsersDepositInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"userAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"userDepositedAmount\",\"type\":\"uint256\"}],\"internalType\":\"structIBillingManager.UserDepositInfo[]\",\"name\":\"_usersInfoArr\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"tokenAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"workflowExecutionDiscount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"networkRewards\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isPermitable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"internalType\":\"structIBillingManager.DepositAssetData\",\"name\":\"depositAssetData\",\"type\":\"tuple\"}],\"internalType\":\"structIBillingManager.DepositAssetInfo\",\"name\":\"_nativeDepositAssetInfo\",\"type\":\"tuple\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"isDepositAssetEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"isDepositAssetPermitable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"isDepositAssetSupported\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"isNativeDepositAsset\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nativeDepositAssetKey\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"userAddr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amountToWithdraw\",\"type\":\"uint256\"}],\"internalType\":\"structIBillingManager.NetworkWithdrawInfo[]\",\"name\":\"_networkWithdrawArr\",\"type\":\"tuple[]\"}],\"name\":\"networkWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contractsRegistryAddr\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"setDependencies\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"injector_\",\"type\":\"address\"}],\"name\":\"setInjector\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_newEnabledStatus\",\"type\":\"bool\"}],\"name\":\"updateDepositAssetEnabledStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_newWorkflowExecutionDiscount\",\"type\":\"uint256\"}],\"name\":\"updateWorkflowExecutionDiscount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_amountToWithdraw\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_sigExpirationTime\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"_v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"_r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"withdrawFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_depositAssetKey\",\"type\":\"string\"}],\"name\":\"withdrawNetworkRewards\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}]",
	Bin: "0x608060405234801561001057600080fd5b50613bbd806100206000396000f3fe6080604052600436106101a05760003560e01c80637ac174f5116100ec578063a266f9631161008a578063c471020411610064578063c47102041461060b578063c66ae1e81461062b578063de2f5f2e1461064b578063f3883e261461068157600080fd5b8063a266f963146105b6578063afb3f30a146105cb578063c172bfd7146105eb57600080fd5b80637d7f8384116100c65780637d7f83841461051457806384b0196e146105415780638cb941cc14610569578063a19ddf5b1461058957600080fd5b80637ac174f5146104b45780637ad882eb146104d45780637c1c6fba146104f457600080fd5b80633666cec51161015957806348cf8bab1161013357806348cf8bab146104275780635a53669c14610454578063606a679f14610474578063691304511461049457600080fd5b80633666cec5146103a557806337913512146103c55780633e3b5b19146103f257600080fd5b80630561010c146102d857806316fb02dd1461030057806327a64f66146103205780632a48ac9a146103405780632b8886821461035357806333c253261461038357600080fd5b366102d357603780546101b290612e73565b80601f01602080910402602001604051908101604052809291908181526020018280546101de90612e73565b801561022b5780601f106102005761010080835404028352916020019161022b565b820191906000526020600020905b81548152906001019060200180831161020e57829003601f168201915b5050505050610239816106ae565b6102d16037805461024990612e73565b80601f016020809104026020016040519081016040528092919081815260200182805461027590612e73565b80156102c25780601f10610297576101008083540402835291602001916102c2565b820191906000526020600020905b8154815290600101906020018083116102a557829003601f168201915b5050505050333334600161071d565b005b600080fd5b3480156102e457600080fd5b506102ed61082a565b6040519081526020015b60405180910390f35b34801561030c57600080fd5b506102d161031b366004612fa2565b61083b565b34801561032c57600080fd5b506102d161033b366004612fec565b610a1b565b6102d161034e366004613073565b610b8e565b34801561035f57600080fd5b5061037361036e366004612fa2565b610c89565b60405190151581526020016102f7565b34801561038f57600080fd5b50610398610cbd565b6040516102f7919061311c565b3480156103b157600080fd5b506102d16103c036600461312f565b610d4b565b3480156103d157600080fd5b506103e56103e0366004613200565b610f01565b6040516102f7919061327b565b3480156103fe57600080fd5b50600080516020613b68833981519152546040516001600160a01b0390911681526020016102f7565b34801561043357600080fd5b506104476104423660046132fd565b611095565b6040516102f7919061331f565b34801561046057600080fd5b506102ed61046f366004612fa2565b6110ac565b34801561048057600080fd5b5061037361048f366004612fa2565b6110d7565b3480156104a057600080fd5b506102d16104af36600461336c565b6110e4565b3480156104c057600080fd5b506102d16104cf3660046133cf565b6111a5565b3480156104e057600080fd5b506102d16104ef366004613200565b611321565b34801561050057600080fd5b506102d161050f366004613200565b611530565b34801561052057600080fd5b5061053461052f366004613409565b611586565b6040516102f79190613456565b34801561054d57600080fd5b50610556611669565b6040516102f797969594939291906134b6565b34801561057557600080fd5b506102d161058436600461354c565b611707565b34801561059557600080fd5b506105a96105a436600461354c565b611725565b6040516102f79190613569565b3480156105c257600080fd5b506105a961174c565b3480156105d757600080fd5b506103736105e6366004612fa2565b611758565b3480156105f757600080fd5b506102d161060636600461360d565b6117ff565b34801561061757600080fd5b50610373610626366004612fa2565b611968565b34801561063757600080fd5b506102d1610646366004613663565b611996565b34801561065757600080fd5b506102ed61066636600461354c565b6001600160a01b03166000908152603d602052604090205490565b34801561068d57600080fd5b506106a161069c3660046136ae565b611a7c565b6040516102f791906136f3565b6106b781610c89565b61071a5760405162461bcd60e51b815260206004820152602960248201527f42696c6c696e674d616e616765723a204465706f73697420617373657420697360448201526808191a5cd8589b195960ba1b60648201526084015b60405180910390fd5b50565b600082116107795760405162461bcd60e51b815260206004820152602360248201527f42696c6c696e674d616e616765723a205a65726f206465706f73697420616d6f6044820152621d5b9d60ea1b6064820152608401610711565b806107b5576107b5843084603c896040516107949190613713565b908152604051908190036020019020546001600160a01b0316929190611af9565b6107c28584846001611b6a565b846040516107d09190613713565b604080519182900382206001600160a01b03808816845286166020840152908201849052907ffbc2fad7e5ffeb083133f666db8691af5364707e2b5bf9d1f6f93834433aeca4906060015b60405180910390a25050505050565b60006108366038611cac565b905090565b8061084581611cb6565b6000603c836040516108579190613713565b9081526040519081900360200190206002810154909150806108d25760405162461bcd60e51b815260206004820152602e60248201527f42696c6c696e674d616e616765723a204e6f206e6574776f726b20726577617260448201526d647320746f20776974686472617760901b6064820152608401610711565b81600201600090556000603560009054906101000a90046001600160a01b03166001600160a01b0316637ac3c02f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561092f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610953919061372f565b90506001600160a01b0381166109b75760405162461bcd60e51b815260206004820152602360248201527f42696c6c696e674d616e616765723a205a65726f207369676e6572206164647260448201526265737360e81b6064820152608401610711565b6109c2858284611d20565b806001600160a01b0316856040516109da9190613713565b604051908190038120848252907f4da529f8b18684c34deb8621c7d4ab35fe1daea1c726cdb6783c93c095d2651a9060200160405180910390a35050505050565b83421115610a6b5760405162461bcd60e51b815260206004820181905260248201527f42696c6c696e674d616e616765723a204578706972656420646561646c696e656044820152606401610711565b336000908152603d6020526040812080549082610a8783613762565b9091555087516020808a0191909120604080517f69bed179001b838362ee62ed138988949306f46e3a7c7f76dab9c0e87ba175958185015233818301526060810192909252608082018a905260a0820184905260c08083018a90528151808403909101815260e090920190528051910120909150610b17610b12610b0a83611d6d565b878787611d9a565b611dc4565b610b22883389611e89565b610b2f8833896000611b6a565b610b3a883389611d20565b6040513390610b4a908a90613713565b604051908190038120898252907fe0dd7f2d0bf336d345c1e8051edf7f753d4bfdc13d35cf30351267de2aa905c89060200160405180910390a35050505050505050565b82610b9881611cb6565b83610ba2816106ae565b6000610bad86611758565b90508015610c1357348414610c0e5760405162461bcd60e51b815260206004820152602160248201527f42696c6c696e674d616e616765723a20496e76616c6964206d73672e76616c756044820152606560f81b6064820152608401610711565b610c74565b3415610c745760405162461bcd60e51b815260206004820152602a60248201527f42696c6c696e674d616e616765723a204e6f742061206e6174697665206465706044820152691bdcda5d08185cdcd95d60b21b6064820152608401610711565b610c81863387878561071d565b505050505050565b6000603c82604051610c9b9190613713565b9081526040519081900360200190206003015460ff6101009091041692915050565b60378054610cca90612e73565b80601f0160208091040260200160405190810160405280929190818152602001828054610cf690612e73565b8015610d435780601f10610d1857610100808354040283529160200191610d43565b820191906000526020600020905b815481529060010190602001808311610d2657829003601f168201915b505050505081565b86610d5581611cb6565b87610d5f816106ae565b610d6889611758565b15610ddb5760405162461bcd60e51b815260206004820152603d60248201527f42696c6c696e674d616e616765723a20556e61626c6520746f206465706f736960448201527f74206e61746976652063757272656e63792077697468207065726d69740000006064820152608401610711565b610de489611968565b610e485760405162461bcd60e51b815260206004820152602f60248201527f42696c6c696e674d616e616765723a204465706f73697420617373657420697360448201526e206e6f74207065726d697461626c6560881b6064820152608401610711565b603c89604051610e589190613713565b9081526040519081900360200181205463d505accf60e01b8252336004830152306024830152604482018990526064820188905260ff8716608483015260a4820186905260c482018590526001600160a01b03169063d505accf9060e401600060405180830381600087803b158015610ed057600080fd5b505af1158015610ee4573d6000803e3d6000fd5b50505050610ef689338a8a600061071d565b505050505050505050565b6060816001600160401b03811115610f1b57610f1b612ead565b604051908082528060200260200182016040528015610f5457816020015b610f41612e1d565b815260200190600190039081610f395790505b50905060005b8281101561108e576040518060400160405280858584818110610f7f57610f7f61377b565b9050602002810190610f919190613791565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250602001603c868685818110610fdf57610fdf61377b565b9050602002810190610ff19190613791565b604051610fff9291906137d7565b90815260408051918290036020908101832060a08401835280546001600160a01b031684526001810154918401919091526002810154918301919091526003015460ff808216151560608401526101009091041615156080820152905282518390839081106110705761107061377b565b6020026020010181905250808061108690613762565b915050610f5a565b5092915050565b60606110a360388484611f26565b90505b92915050565b6000603c826040516110be9190613713565b9081526020016040518091039020600201549050919050565b60006110a6603a83611fde565b6110ec61200b565b603580546001600160a01b0319166001600160a01b038416908117909155604080516336ca3d7360e01b815290518492916336ca3d739160048083019260209291908290030181865afa158015611147573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116b919061372f565b603680546001600160a01b0319166001600160a01b03929092169190911790555033600080516020613b68833981519152555050565b5050565b600054610100900460ff16158080156111c55750600054600160ff909116105b806111df5750303b1580156111df575060005460ff166001145b6112425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610711565b6000805460ff191660011790558015611265576000805461ff0019166101001790555b6112ae6040518060400160405280600e81526020016d2134b63634b733a6b0b730b3b2b960911b815250604051806040016040528060018152602001603160f81b81525061208f565b6112b88280613791565b6037916112c691908361382d565b506112d86112d3836138ec565b6120c0565b80156111a1576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b61132a33611dc4565b60005b8181101561152b57368383838181106113485761134861377b565b905060200281019061135a91906139a0565b90506113a36113698280613791565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611cb692505050565b6113ff6113b08280613791565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113f592505050604084016020850161354c565b8360400135611e89565b61145d61140c8280613791565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061145192505050604084016020850161354c565b83604001356000611b6a565b6040810135603c61146e8380613791565b60405161147c9291906137d7565b9081526020016040518091039020600201600082825461149c91906139b6565b909155506114b29050604082016020830161354c565b6001600160a01b03166114c58280613791565b6040516114d39291906137d7565b60405180910390207ff72e4018008bb0ada87515fbd23be8639327f3e5c56c767bade1791a8cf98aaa836040013560405161151091815260200190565b60405180910390a3508061152381613762565b91505061132d565b505050565b61153933611dc4565b60005b8181101561152b576115748383838181106115595761155961377b565b905060200281019061156b91906139c9565b6112d3906138ec565b8061157e81613762565b91505061153c565b6060600061159e6115976038611cac565b858561236d565b90506115aa84826139df565b6001600160401b038111156115c1576115c1612ead565b60405190808252806020026020018201604052801561160657816020015b60408051808201909152600080825260208201528152602001906001900390816115df5790505b509150835b8181101561166057611627611621603883612398565b87611a7c565b8361163287846139df565b815181106116425761164261377b565b6020026020010181905250808061165890613762565b91505061160b565b50509392505050565b6000606080600080600060606001546000801b1480156116895750600254155b6116cd5760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610711565b6116d56123a4565b6116dd612436565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b61170f61200b565b61071a81600080516020613b6883398151915255565b6001600160a01b0381166000908152603d602052604090206060906110a690600101612445565b6060610836603a612445565b60006110a6826037805461176b90612e73565b80601f016020809104026020016040519081016040528092919081815260200182805461179790612e73565b80156117e45780601f106117b9576101008083540402835291602001916117e4565b820191906000526020600020905b8154815290600101906020018083116117c757829003601f168201915b50505050508051602091820120825192909101919091201490565b61180833611dc4565b82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061184a9250839150611cb69050565b811515603c858560405161185f9291906137d7565b9081526040519081900360200190206003015460ff610100909104161515036118dd5760405162461bcd60e51b815260206004820152602a60248201527f42696c6c696e674d616e616765723a20496e76616c6964206e657720656e61626044820152696c65642073746174757360b01b6064820152608401610711565b81603c85856040516118f09291906137d7565b90815260405190819003602001812060030180549215156101000261ff00199093169290921790915561192690859085906137d7565b6040519081900381208315158252907f838dfb07f2f9eda916131303b1c93fcdb2d1f0cfae1f651eee30c8bd440913569060200160405180910390a250505050565b6000603c8260405161197a9190613713565b9081526040519081900360200190206003015460ff1692915050565b61199f33611dc4565b82828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506119e19250839150611cb69050565b6000603c85856040516119f59291906137d7565b908152602001604051809103902060010154905082603c8686604051611a1c9291906137d7565b90815260405190819003602001812060010191909155611a3f90869086906137d7565b6040805191829003822085835260208301849052917f70c21b53e4a29c6a334ae8d8d80a885023e4749ee873d6594b3f6cbb66140b6b910161081b565b60408051808201909152600080825260208201526040518060400160405280846001600160a01b03168152602001603d6000866001600160a01b03166001600160a01b0316815260200190815260200160002060030184604051611ae09190613713565b9081526040519081900360200190205490529392505050565b6040516001600160a01b0380851660248301528316604482015260648101829052611b649085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612522565b50505050565b60008211611bc85760405162461bcd60e51b815260206004820152602560248201527f42696c6c696e674d616e616765723a205a65726f20616d6f756e7420746f2075604482015264706461746560d81b6064820152608401610711565b6001600160a01b0383166000908152603d602052604090208115611c3b57828160030186604051611bf99190613713565b90815260200160405180910390206000828254611c1691906139b6565b90915550611c29905060018201866125f7565b50611c35603885612659565b50611ca5565b6000838260030187604051611c509190613713565b908152602001604051809103902054611c6991906139df565b9050808260030187604051611c7e9190613713565b908152604051908190036020019020556000819003610c8157611ca260388661266e565b50505b5050505050565b60006110a6825490565b611cbf816110d7565b61071a5760405162461bcd60e51b815260206004820152602c60248201527f42696c6c696e674d616e616765723a204465706f73697420617373657420646f60448201526b195cc81b9bdd08195e1a5cdd60a21b6064820152608401610711565b611d2983611758565b15611d385761152b8282612683565b61152b8282603c86604051611d4d9190613713565b908152604051908190036020019020546001600160a01b0316919061279c565b60006110a6611d7a6127cc565b8360405161190160f01b8152600281019290925260228201526042902090565b6000806000611dab878787876127d6565b91509150611db88161289a565b5090505b949350505050565b60355460408051637ac3c02f60e01b815290516001600160a01b03808516931691637ac3c02f9160048083019260209291908290030181865afa158015611e0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e33919061372f565b6001600160a01b03161461071a5760405162461bcd60e51b815260206004820152601c60248201527f42696c6c696e674d616e616765723a204e6f742061207369676e6572000000006044820152606401610711565b6001600160a01b0382166000908152603d6020526040908190209051829160030190611eb6908690613713565b908152602001604051809103902054101561152b5760405162461bcd60e51b815260206004820152602a60248201527f42696c6c696e674d616e616765723a204e6f7420656e6f756768206465706f73604482015269697465642066756e647360b01b6064820152608401610711565b60606000611f3661159786611cac565b9050611f4284826139df565b6001600160401b03811115611f5957611f59612ead565b604051908082528060200260200182016040528015611f82578160200160208202803683370190505b509150835b8181101561166057611f998682612398565b83611fa487846139df565b81518110611fb457611fb461377b565b6001600160a01b039092166020928302919091019091015280611fd681613762565b915050611f87565b60008260010182604051611ff29190613713565b9081526040519081900360200190205415159392505050565b6000612023600080516020613b688339815191525490565b90506001600160a01b038116158061204357506001600160a01b03811633145b61071a5760405162461bcd60e51b815260206004820152601a60248201527f446570656e64616e743a206e6f7420616e20696e6a6563746f720000000000006044820152606401610711565b600054610100900460ff166120b65760405162461bcd60e51b8152600401610711906139f2565b6111a182826129e4565b80516120cb906110d7565b1561212d5760405162461bcd60e51b815260206004820152602c60248201527f42696c6c696e674d616e616765723a204465706f73697420617373657420616c60448201526b72656164792065786973747360a01b6064820152608401610711565b6020810151516001600160a01b0316151580612159575061215981600001516037805461176b90612e73565b6121c15760405162461bcd60e51b815260206004820152603360248201527f42696c6c696e674d616e616765723a20496e76616c6964206465706f73697420604482015272617373657420746f6b656e206164647265737360681b6064820152608401610711565b8051516122225760405162461bcd60e51b815260206004820152602960248201527f42696c6c696e674d616e616765723a20496e76616c6964206465706f736974206044820152686173736574206b657960b81b6064820152608401610711565b602081015160400151156122935760405162461bcd60e51b815260206004820152603260248201527f42696c6c696e674d616e616765723a20496e76616c696420696e6974206e6574604482015271776f726b20726577617264732076616c756560701b6064820152608401610711565b60208101518151604051603c916122a991613713565b90815260408051918290036020908101909220835181546001600160a01b039091166001600160a01b0319909116178155918301516001830155820151600282015560608201516003909101805460809093015115156101000261ff00199215159290921661ffff1990931692909217179055805161232a90603a906125f7565b50805160208201516040517f310a01f49fbf43988aa0ce4a44296f5fc9f1fe442769d2416f1965d6a1cd236e92612362929091613a3d565b60405180910390a150565b600061237982846139b6565b9050838111156123865750825b808311156123915750815b9392505050565b60006110a38383612a33565b6060600380546123b390612e73565b80601f01602080910402602001604051908101604052809291908181526020018280546123df90612e73565b801561242c5780601f106124015761010080835404028352916020019161242c565b820191906000526020600020905b81548152906001019060200180831161240f57829003601f168201915b5050505050905090565b6060600480546123b390612e73565b606081600001805480602002602001604051908101604052809291908181526020016000905b8282101561251757838290600052602060002001805461248a90612e73565b80601f01602080910402602001604051908101604052809291908181526020018280546124b690612e73565b80156125035780601f106124d857610100808354040283529160200191612503565b820191906000526020600020905b8154815290600101906020018083116124e657829003601f168201915b50505050508152602001906001019061246b565b505050509050919050565b6000612577826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612a5d9092919063ffffffff16565b90508051600014806125985750808060200190518101906125989190613a5f565b61152b5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610711565b60006126038383611fde565b612651578254600181018455600084815260209020016126238382613a7c565b5082546040516001850190612639908590613713565b908152604051908190036020019020555060016110a6565b5060006110a6565b60006110a3836001600160a01b038416612a6c565b60006110a3836001600160a01b038416612ab3565b804710156126d35760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610711565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612720576040519150601f19603f3d011682016040523d82523d6000602084013e612725565b606091505b505090508061152b5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610711565b6040516001600160a01b03831660248201526044810182905261152b90849063a9059cbb60e01b90606401611b2d565b6000610836612ba6565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561280d5750600090506003612891565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612861573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661288a57600060019250925050612891565b9150600090505b94509492505050565b60008160048111156128ae576128ae613b3b565b036128b65750565b60018160048111156128ca576128ca613b3b565b036129175760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610711565b600281600481111561292b5761292b613b3b565b036129785760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610711565b600381600481111561298c5761298c613b3b565b0361071a5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610711565b600054610100900460ff16612a0b5760405162461bcd60e51b8152600401610711906139f2565b6003612a178382613a7c565b506004612a248282613a7c565b50506000600181905560025550565b6000826000018281548110612a4a57612a4a61377b565b9060005260206000200154905092915050565b6060611dbc8484600085612c1a565b6000818152600183016020526040812054612651575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556110a6565b60008181526001830160205260408120548015612b9c576000612ad76001836139df565b8554909150600090612aeb906001906139df565b9050818114612b50576000866000018281548110612b0b57612b0b61377b565b9060005260206000200154905080876000018481548110612b2e57612b2e61377b565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612b6157612b61613b51565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506110a6565b60009150506110a6565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f612bd1612cf5565b612bd9612d4e565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b606082471015612c7b5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610711565b600080866001600160a01b03168587604051612c979190613713565b60006040518083038185875af1925050503d8060008114612cd4576040519150601f19603f3d011682016040523d82523d6000602084013e612cd9565b606091505b5091509150612cea87838387612d7f565b979650505050505050565b600080612d006123a4565b805190915015612d17578051602090910120919050565b6001548015612d265792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b600080612d59612436565b805190915015612d70578051602090910120919050565b6002548015612d265792915050565b60608315612dee578251600003612de7576001600160a01b0385163b612de75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610711565b5081611dbc565b611dbc8383815115612e035781518083602001fd5b8060405162461bcd60e51b8152600401610711919061311c565b604051806040016040528060608152602001612e6e6040518060a0016040528060006001600160a01b0316815260200160008152602001600081526020016000151581526020016000151581525090565b905290565b600181811c90821680612e8757607f821691505b602082108103612ea757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715612ee557612ee5612ead565b60405290565b60405160a081016001600160401b0381118282101715612ee557612ee5612ead565b60006001600160401b0380841115612f2757612f27612ead565b604051601f8501601f19908116603f01168101908282118183101715612f4f57612f4f612ead565b81604052809350858152868686011115612f6857600080fd5b858560208301376000602087830101525050509392505050565b600082601f830112612f9357600080fd5b6110a383833560208501612f0d565b600060208284031215612fb457600080fd5b81356001600160401b03811115612fca57600080fd5b611dbc84828501612f82565b803560ff81168114612fe757600080fd5b919050565b60008060008060008060c0878903121561300557600080fd5b86356001600160401b0381111561301b57600080fd5b61302789828a01612f82565b965050602087013594506040870135935061304460608801612fd6565b92506080870135915060a087013590509295509295509295565b6001600160a01b038116811461071a57600080fd5b60008060006060848603121561308857600080fd5b83356001600160401b0381111561309e57600080fd5b6130aa86828701612f82565b93505060208401356130bb8161305e565b929592945050506040919091013590565b60005b838110156130e75781810151838201526020016130cf565b50506000910152565b600081518084526131088160208601602086016130cc565b601f01601f19169290920160200192915050565b6020815260006110a360208301846130f0565b600080600080600080600060e0888a03121561314a57600080fd5b87356001600160401b0381111561316057600080fd5b61316c8a828b01612f82565b975050602088013561317d8161305e565b9550604088013594506060880135935061319960808901612fd6565b925060a0880135915060c0880135905092959891949750929550565b60008083601f8401126131c757600080fd5b5081356001600160401b038111156131de57600080fd5b6020830191508360208260051b85010111156131f957600080fd5b9250929050565b6000806020838503121561321357600080fd5b82356001600160401b0381111561322957600080fd5b613235858286016131b5565b90969095509350505050565b80516001600160a01b0316825260208082015190830152604080820151908301526060808201511515908301526080908101511515910152565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132f057603f19888603018452815160c081518188526132c8828901826130f0565b9150508782015191506132dd88880183613241565b95505092850192908501906001016132a2565b5092979650505050505050565b6000806040838503121561331057600080fd5b50508035926020909101359150565b6020808252825182820181905260009190848201906040850190845b818110156133605783516001600160a01b03168352928401929184019160010161333b565b50909695505050505050565b6000806040838503121561337f57600080fd5b823561338a8161305e565b915060208301356001600160401b038111156133a557600080fd5b8301601f810185136133b657600080fd5b6133c585823560208401612f0d565b9150509250929050565b6000602082840312156133e157600080fd5b81356001600160401b038111156133f757600080fd5b820160c0818503121561239157600080fd5b60008060006060848603121561341e57600080fd5b83356001600160401b0381111561343457600080fd5b61344086828701612f82565b9660208601359650604090950135949350505050565b602080825282518282018190526000919060409081850190868401855b828110156134a95761349984835180516001600160a01b03168252602090810151910152565b9284019290850190600101613473565b5091979650505050505050565b60ff60f81b881681526000602060e0818401526134d660e084018a6130f0565b83810360408501526134e8818a6130f0565b606085018990526001600160a01b038816608086015260a0850187905284810360c0860152855180825283870192509083019060005b8181101561353a5783518352928401929184019160010161351e565b50909c9b505050505050505050505050565b60006020828403121561355e57600080fd5b81356123918161305e565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132f057603f198886030184526135ac8583516130f0565b94509285019290850190600101613590565b60008083601f8401126135d057600080fd5b5081356001600160401b038111156135e757600080fd5b6020830191508360208285010111156131f957600080fd5b801515811461071a57600080fd5b60008060006040848603121561362257600080fd5b83356001600160401b0381111561363857600080fd5b613644868287016135be565b9094509250506020840135613658816135ff565b809150509250925092565b60008060006040848603121561367857600080fd5b83356001600160401b0381111561368e57600080fd5b61369a868287016135be565b909790965060209590950135949350505050565b600080604083850312156136c157600080fd5b82356136cc8161305e565b915060208301356001600160401b038111156136e757600080fd5b6133c585828601612f82565b81516001600160a01b0316815260208083015190820152604081016110a6565b600082516137258184602087016130cc565b9190910192915050565b60006020828403121561374157600080fd5b81516123918161305e565b634e487b7160e01b600052601160045260246000fd5b6000600182016137745761377461374c565b5060010190565b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126137a857600080fd5b8301803591506001600160401b038211156137c257600080fd5b6020019150368190038213156131f957600080fd5b8183823760009101908152919050565b601f82111561152b57600081815260208120601f850160051c8101602086101561380e5750805b601f850160051c820191505b81811015610c815782815560010161381a565b6001600160401b0383111561384457613844612ead565b613858836138528354612e73565b836137e7565b6000601f84116001811461388c57600085156138745750838201355b600019600387901b1c1916600186901b178355611ca5565b600083815260209020601f19861690835b828110156138bd578685013582556020948501946001909201910161389d565b50868210156138da5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b600081360360c08112156138ff57600080fd5b613907612ec3565b83356001600160401b0381111561391d57600080fd5b61392936828701612f82565b82525060a0601f198301121561393e57600080fd5b613946612eeb565b915060208401356139568161305e565b82526040848101356020840152606085013590830152608084013561397a816135ff565b606083015260a084013561398d816135ff565b6080830152602081019190915292915050565b60008235605e1983360301811261372557600080fd5b808201808211156110a6576110a661374c565b6000823560be1983360301811261372557600080fd5b818103818111156110a6576110a661374c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60c081526000613a5060c08301856130f0565b90506123916020830184613241565b600060208284031215613a7157600080fd5b8151612391816135ff565b81516001600160401b03811115613a9557613a95612ead565b613aa981613aa38454612e73565b846137e7565b602080601f831160018114613ade5760008415613ac65750858301515b600019600386901b1c1916600185901b178555610c81565b600085815260208120601f198616915b82811015613b0d57888601518255948401946001909101908401613aee565b5085821015613b2b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603160045260246000fdfe3d1f25f1ac447e55e7fec744471c4dab1c6a2b6ffb897825f9ea3d2e8c9be583a26469706673582212201db8ee2bc1c5a1a552129d1ab30faf972d546a9e667a68b19737ae0824753ba764736f6c63430008120033",
}

BillingManagerMetaData contains all meta data concerning the BillingManager contract.

Functions

This section is empty.

Types

type BillingManager

type BillingManager struct {
	BillingManagerCaller     // Read-only binding to the contract
	BillingManagerTransactor // Write-only binding to the contract
	BillingManagerFilterer   // Log filterer for contract events
}

BillingManager is an auto generated Go binding around an Ethereum contract.

func DeployBillingManager

func DeployBillingManager(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *BillingManager, error)

DeployBillingManager deploys a new Ethereum contract, binding an instance of BillingManager to it.

func NewBillingManager

func NewBillingManager(address common.Address, backend bind.ContractBackend) (*BillingManager, error)

NewBillingManager creates a new instance of BillingManager, bound to a specific deployed contract.

type BillingManagerAssetDeposited

type BillingManagerAssetDeposited struct {
	DepositAssetKey  common.Hash
	TokensSender     common.Address
	DepositRecipient common.Address
	DepositAmount    *big.Int
	Raw              types.Log // Blockchain specific contextual infos
}

BillingManagerAssetDeposited represents a AssetDeposited event raised by the BillingManager contract.

type BillingManagerAssetDepositedIterator

type BillingManagerAssetDepositedIterator struct {
	Event *BillingManagerAssetDeposited // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerAssetDepositedIterator is returned from FilterAssetDeposited and is used to iterate over the raw logs and unpacked data for AssetDeposited events raised by the BillingManager contract.

func (*BillingManagerAssetDepositedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerAssetDepositedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerAssetDepositedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerCaller

type BillingManagerCaller struct {
	// contains filtered or unexported fields
}

BillingManagerCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewBillingManagerCaller

func NewBillingManagerCaller(address common.Address, caller bind.ContractCaller) (*BillingManagerCaller, error)

NewBillingManagerCaller creates a new read-only instance of BillingManager, bound to a specific deployed contract.

func (*BillingManagerCaller) Eip712Domain

func (_BillingManager *BillingManagerCaller) Eip712Domain(opts *bind.CallOpts) (struct {
	Fields            [1]byte
	Name              string
	Version           string
	ChainId           *big.Int
	VerifyingContract common.Address
	Salt              [32]byte
	Extensions        []*big.Int
}, error)

Eip712Domain is a free data retrieval call binding the contract method 0x84b0196e.

Solidity: function eip712Domain() view returns(bytes1 fields, string name, string version, uint256 chainId, address verifyingContract, bytes32 salt, uint256[] extensions)

func (*BillingManagerCaller) GetDepositAssetsInfo

func (_BillingManager *BillingManagerCaller) GetDepositAssetsInfo(opts *bind.CallOpts, _depositAssetKeysArr []string) ([]IBillingManagerDepositAssetInfo, error)

GetDepositAssetsInfo is a free data retrieval call binding the contract method 0x37913512.

Solidity: function getDepositAssetsInfo(string[] _depositAssetKeysArr) view returns((string,(address,uint256,uint256,bool,bool))[] _depositAssetsInfoArr)

func (*BillingManagerCaller) GetExistingUsers

func (_BillingManager *BillingManagerCaller) GetExistingUsers(opts *bind.CallOpts, _offset *big.Int, _limit *big.Int) ([]common.Address, error)

GetExistingUsers is a free data retrieval call binding the contract method 0x48cf8bab.

Solidity: function getExistingUsers(uint256 _offset, uint256 _limit) view returns(address[])

func (*BillingManagerCaller) GetInjector

func (_BillingManager *BillingManagerCaller) GetInjector(opts *bind.CallOpts) (common.Address, error)

GetInjector is a free data retrieval call binding the contract method 0x3e3b5b19.

Solidity: function getInjector() view returns(address injector_)

func (*BillingManagerCaller) GetNetworkRewards

func (_BillingManager *BillingManagerCaller) GetNetworkRewards(opts *bind.CallOpts, _depositAssetKey string) (*big.Int, error)

GetNetworkRewards is a free data retrieval call binding the contract method 0x5a53669c.

Solidity: function getNetworkRewards(string _depositAssetKey) view returns(uint256)

func (*BillingManagerCaller) GetSupportedDepositAssetKeys

func (_BillingManager *BillingManagerCaller) GetSupportedDepositAssetKeys(opts *bind.CallOpts) ([]string, error)

GetSupportedDepositAssetKeys is a free data retrieval call binding the contract method 0xa266f963.

Solidity: function getSupportedDepositAssetKeys() view returns(string[])

func (*BillingManagerCaller) GetTotalUsersCount

func (_BillingManager *BillingManagerCaller) GetTotalUsersCount(opts *bind.CallOpts) (*big.Int, error)

GetTotalUsersCount is a free data retrieval call binding the contract method 0x0561010c.

Solidity: function getTotalUsersCount() view returns(uint256)

func (*BillingManagerCaller) GetUserDepositAssetKeys

func (_BillingManager *BillingManagerCaller) GetUserDepositAssetKeys(opts *bind.CallOpts, _userAddr common.Address) ([]string, error)

GetUserDepositAssetKeys is a free data retrieval call binding the contract method 0xa19ddf5b.

Solidity: function getUserDepositAssetKeys(address _userAddr) view returns(string[])

func (*BillingManagerCaller) GetUserDepositInfo

func (_BillingManager *BillingManagerCaller) GetUserDepositInfo(opts *bind.CallOpts, _userAddr common.Address, _depositAssetKey string) (IBillingManagerUserDepositInfo, error)

GetUserDepositInfo is a free data retrieval call binding the contract method 0xf3883e26.

Solidity: function getUserDepositInfo(address _userAddr, string _depositAssetKey) view returns((address,uint256))

func (*BillingManagerCaller) GetUserWithdrawNonce

func (_BillingManager *BillingManagerCaller) GetUserWithdrawNonce(opts *bind.CallOpts, _userAddr common.Address) (*big.Int, error)

GetUserWithdrawNonce is a free data retrieval call binding the contract method 0xde2f5f2e.

Solidity: function getUserWithdrawNonce(address _userAddr) view returns(uint256)

func (*BillingManagerCaller) GetUsersDepositInfo

func (_BillingManager *BillingManagerCaller) GetUsersDepositInfo(opts *bind.CallOpts, _depositAssetKey string, _offset *big.Int, _limit *big.Int) ([]IBillingManagerUserDepositInfo, error)

GetUsersDepositInfo is a free data retrieval call binding the contract method 0x7d7f8384.

Solidity: function getUsersDepositInfo(string _depositAssetKey, uint256 _offset, uint256 _limit) view returns((address,uint256)[] _usersInfoArr)

func (*BillingManagerCaller) IsDepositAssetEnabled

func (_BillingManager *BillingManagerCaller) IsDepositAssetEnabled(opts *bind.CallOpts, _depositAssetKey string) (bool, error)

IsDepositAssetEnabled is a free data retrieval call binding the contract method 0x2b888682.

Solidity: function isDepositAssetEnabled(string _depositAssetKey) view returns(bool)

func (*BillingManagerCaller) IsDepositAssetPermitable

func (_BillingManager *BillingManagerCaller) IsDepositAssetPermitable(opts *bind.CallOpts, _depositAssetKey string) (bool, error)

IsDepositAssetPermitable is a free data retrieval call binding the contract method 0xc4710204.

Solidity: function isDepositAssetPermitable(string _depositAssetKey) view returns(bool)

func (*BillingManagerCaller) IsDepositAssetSupported

func (_BillingManager *BillingManagerCaller) IsDepositAssetSupported(opts *bind.CallOpts, _depositAssetKey string) (bool, error)

IsDepositAssetSupported is a free data retrieval call binding the contract method 0x606a679f.

Solidity: function isDepositAssetSupported(string _depositAssetKey) view returns(bool)

func (*BillingManagerCaller) IsNativeDepositAsset

func (_BillingManager *BillingManagerCaller) IsNativeDepositAsset(opts *bind.CallOpts, _depositAssetKey string) (bool, error)

IsNativeDepositAsset is a free data retrieval call binding the contract method 0xafb3f30a.

Solidity: function isNativeDepositAsset(string _depositAssetKey) view returns(bool)

func (*BillingManagerCaller) NativeDepositAssetKey

func (_BillingManager *BillingManagerCaller) NativeDepositAssetKey(opts *bind.CallOpts) (string, error)

NativeDepositAssetKey is a free data retrieval call binding the contract method 0x33c25326.

Solidity: function nativeDepositAssetKey() view returns(string)

type BillingManagerCallerRaw

type BillingManagerCallerRaw struct {
	Contract *BillingManagerCaller // Generic read-only contract binding to access the raw methods on
}

BillingManagerCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*BillingManagerCallerRaw) Call

func (_BillingManager *BillingManagerCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type BillingManagerCallerSession

type BillingManagerCallerSession struct {
	Contract *BillingManagerCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts         // Call options to use throughout this session
}

BillingManagerCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*BillingManagerCallerSession) Eip712Domain

func (_BillingManager *BillingManagerCallerSession) Eip712Domain() (struct {
	Fields            [1]byte
	Name              string
	Version           string
	ChainId           *big.Int
	VerifyingContract common.Address
	Salt              [32]byte
	Extensions        []*big.Int
}, error)

Eip712Domain is a free data retrieval call binding the contract method 0x84b0196e.

Solidity: function eip712Domain() view returns(bytes1 fields, string name, string version, uint256 chainId, address verifyingContract, bytes32 salt, uint256[] extensions)

func (*BillingManagerCallerSession) GetDepositAssetsInfo

func (_BillingManager *BillingManagerCallerSession) GetDepositAssetsInfo(_depositAssetKeysArr []string) ([]IBillingManagerDepositAssetInfo, error)

GetDepositAssetsInfo is a free data retrieval call binding the contract method 0x37913512.

Solidity: function getDepositAssetsInfo(string[] _depositAssetKeysArr) view returns((string,(address,uint256,uint256,bool,bool))[] _depositAssetsInfoArr)

func (*BillingManagerCallerSession) GetExistingUsers

func (_BillingManager *BillingManagerCallerSession) GetExistingUsers(_offset *big.Int, _limit *big.Int) ([]common.Address, error)

GetExistingUsers is a free data retrieval call binding the contract method 0x48cf8bab.

Solidity: function getExistingUsers(uint256 _offset, uint256 _limit) view returns(address[])

func (*BillingManagerCallerSession) GetInjector

func (_BillingManager *BillingManagerCallerSession) GetInjector() (common.Address, error)

GetInjector is a free data retrieval call binding the contract method 0x3e3b5b19.

Solidity: function getInjector() view returns(address injector_)

func (*BillingManagerCallerSession) GetNetworkRewards

func (_BillingManager *BillingManagerCallerSession) GetNetworkRewards(_depositAssetKey string) (*big.Int, error)

GetNetworkRewards is a free data retrieval call binding the contract method 0x5a53669c.

Solidity: function getNetworkRewards(string _depositAssetKey) view returns(uint256)

func (*BillingManagerCallerSession) GetSupportedDepositAssetKeys

func (_BillingManager *BillingManagerCallerSession) GetSupportedDepositAssetKeys() ([]string, error)

GetSupportedDepositAssetKeys is a free data retrieval call binding the contract method 0xa266f963.

Solidity: function getSupportedDepositAssetKeys() view returns(string[])

func (*BillingManagerCallerSession) GetTotalUsersCount

func (_BillingManager *BillingManagerCallerSession) GetTotalUsersCount() (*big.Int, error)

GetTotalUsersCount is a free data retrieval call binding the contract method 0x0561010c.

Solidity: function getTotalUsersCount() view returns(uint256)

func (*BillingManagerCallerSession) GetUserDepositAssetKeys

func (_BillingManager *BillingManagerCallerSession) GetUserDepositAssetKeys(_userAddr common.Address) ([]string, error)

GetUserDepositAssetKeys is a free data retrieval call binding the contract method 0xa19ddf5b.

Solidity: function getUserDepositAssetKeys(address _userAddr) view returns(string[])

func (*BillingManagerCallerSession) GetUserDepositInfo

func (_BillingManager *BillingManagerCallerSession) GetUserDepositInfo(_userAddr common.Address, _depositAssetKey string) (IBillingManagerUserDepositInfo, error)

GetUserDepositInfo is a free data retrieval call binding the contract method 0xf3883e26.

Solidity: function getUserDepositInfo(address _userAddr, string _depositAssetKey) view returns((address,uint256))

func (*BillingManagerCallerSession) GetUserWithdrawNonce

func (_BillingManager *BillingManagerCallerSession) GetUserWithdrawNonce(_userAddr common.Address) (*big.Int, error)

GetUserWithdrawNonce is a free data retrieval call binding the contract method 0xde2f5f2e.

Solidity: function getUserWithdrawNonce(address _userAddr) view returns(uint256)

func (*BillingManagerCallerSession) GetUsersDepositInfo

func (_BillingManager *BillingManagerCallerSession) GetUsersDepositInfo(_depositAssetKey string, _offset *big.Int, _limit *big.Int) ([]IBillingManagerUserDepositInfo, error)

GetUsersDepositInfo is a free data retrieval call binding the contract method 0x7d7f8384.

Solidity: function getUsersDepositInfo(string _depositAssetKey, uint256 _offset, uint256 _limit) view returns((address,uint256)[] _usersInfoArr)

func (*BillingManagerCallerSession) IsDepositAssetEnabled

func (_BillingManager *BillingManagerCallerSession) IsDepositAssetEnabled(_depositAssetKey string) (bool, error)

IsDepositAssetEnabled is a free data retrieval call binding the contract method 0x2b888682.

Solidity: function isDepositAssetEnabled(string _depositAssetKey) view returns(bool)

func (*BillingManagerCallerSession) IsDepositAssetPermitable

func (_BillingManager *BillingManagerCallerSession) IsDepositAssetPermitable(_depositAssetKey string) (bool, error)

IsDepositAssetPermitable is a free data retrieval call binding the contract method 0xc4710204.

Solidity: function isDepositAssetPermitable(string _depositAssetKey) view returns(bool)

func (*BillingManagerCallerSession) IsDepositAssetSupported

func (_BillingManager *BillingManagerCallerSession) IsDepositAssetSupported(_depositAssetKey string) (bool, error)

IsDepositAssetSupported is a free data retrieval call binding the contract method 0x606a679f.

Solidity: function isDepositAssetSupported(string _depositAssetKey) view returns(bool)

func (*BillingManagerCallerSession) IsNativeDepositAsset

func (_BillingManager *BillingManagerCallerSession) IsNativeDepositAsset(_depositAssetKey string) (bool, error)

IsNativeDepositAsset is a free data retrieval call binding the contract method 0xafb3f30a.

Solidity: function isNativeDepositAsset(string _depositAssetKey) view returns(bool)

func (*BillingManagerCallerSession) NativeDepositAssetKey

func (_BillingManager *BillingManagerCallerSession) NativeDepositAssetKey() (string, error)

NativeDepositAssetKey is a free data retrieval call binding the contract method 0x33c25326.

Solidity: function nativeDepositAssetKey() view returns(string)

type BillingManagerDepositAssetAdded

type BillingManagerDepositAssetAdded struct {
	DepositAssetKey  string
	DepositAssetData IBillingManagerDepositAssetData
	Raw              types.Log // Blockchain specific contextual infos
}

BillingManagerDepositAssetAdded represents a DepositAssetAdded event raised by the BillingManager contract.

type BillingManagerDepositAssetAddedIterator

type BillingManagerDepositAssetAddedIterator struct {
	Event *BillingManagerDepositAssetAdded // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerDepositAssetAddedIterator is returned from FilterDepositAssetAdded and is used to iterate over the raw logs and unpacked data for DepositAssetAdded events raised by the BillingManager contract.

func (*BillingManagerDepositAssetAddedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerDepositAssetAddedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerDepositAssetAddedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerDepositAssetEnabledStatusUpdated

type BillingManagerDepositAssetEnabledStatusUpdated struct {
	DepositAssetKey  common.Hash
	NewEnabledStatus bool
	Raw              types.Log // Blockchain specific contextual infos
}

BillingManagerDepositAssetEnabledStatusUpdated represents a DepositAssetEnabledStatusUpdated event raised by the BillingManager contract.

type BillingManagerDepositAssetEnabledStatusUpdatedIterator

type BillingManagerDepositAssetEnabledStatusUpdatedIterator struct {
	Event *BillingManagerDepositAssetEnabledStatusUpdated // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerDepositAssetEnabledStatusUpdatedIterator is returned from FilterDepositAssetEnabledStatusUpdated and is used to iterate over the raw logs and unpacked data for DepositAssetEnabledStatusUpdated events raised by the BillingManager contract.

func (*BillingManagerDepositAssetEnabledStatusUpdatedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerDepositAssetEnabledStatusUpdatedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerDepositAssetEnabledStatusUpdatedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerEIP712DomainChanged

type BillingManagerEIP712DomainChanged struct {
	Raw types.Log // Blockchain specific contextual infos
}

BillingManagerEIP712DomainChanged represents a EIP712DomainChanged event raised by the BillingManager contract.

type BillingManagerEIP712DomainChangedIterator

type BillingManagerEIP712DomainChangedIterator struct {
	Event *BillingManagerEIP712DomainChanged // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerEIP712DomainChangedIterator is returned from FilterEIP712DomainChanged and is used to iterate over the raw logs and unpacked data for EIP712DomainChanged events raised by the BillingManager contract.

func (*BillingManagerEIP712DomainChangedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerEIP712DomainChangedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerEIP712DomainChangedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerFilterer

type BillingManagerFilterer struct {
	// contains filtered or unexported fields
}

BillingManagerFilterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewBillingManagerFilterer

func NewBillingManagerFilterer(address common.Address, filterer bind.ContractFilterer) (*BillingManagerFilterer, error)

NewBillingManagerFilterer creates a new log filterer instance of BillingManager, bound to a specific deployed contract.

func (*BillingManagerFilterer) FilterAssetDeposited

func (_BillingManager *BillingManagerFilterer) FilterAssetDeposited(opts *bind.FilterOpts, depositAssetKey []string) (*BillingManagerAssetDepositedIterator, error)

FilterAssetDeposited is a free log retrieval operation binding the contract event 0xfbc2fad7e5ffeb083133f666db8691af5364707e2b5bf9d1f6f93834433aeca4.

Solidity: event AssetDeposited(string indexed depositAssetKey, address tokensSender, address depositRecipient, uint256 depositAmount)

func (*BillingManagerFilterer) FilterDepositAssetAdded

func (_BillingManager *BillingManagerFilterer) FilterDepositAssetAdded(opts *bind.FilterOpts) (*BillingManagerDepositAssetAddedIterator, error)

FilterDepositAssetAdded is a free log retrieval operation binding the contract event 0x310a01f49fbf43988aa0ce4a44296f5fc9f1fe442769d2416f1965d6a1cd236e.

Solidity: event DepositAssetAdded(string depositAssetKey, (address,uint256,uint256,bool,bool) depositAssetData)

func (*BillingManagerFilterer) FilterDepositAssetEnabledStatusUpdated

func (_BillingManager *BillingManagerFilterer) FilterDepositAssetEnabledStatusUpdated(opts *bind.FilterOpts, depositAssetKey []string) (*BillingManagerDepositAssetEnabledStatusUpdatedIterator, error)

FilterDepositAssetEnabledStatusUpdated is a free log retrieval operation binding the contract event 0x838dfb07f2f9eda916131303b1c93fcdb2d1f0cfae1f651eee30c8bd44091356.

Solidity: event DepositAssetEnabledStatusUpdated(string indexed depositAssetKey, bool newEnabledStatus)

func (*BillingManagerFilterer) FilterEIP712DomainChanged

func (_BillingManager *BillingManagerFilterer) FilterEIP712DomainChanged(opts *bind.FilterOpts) (*BillingManagerEIP712DomainChangedIterator, error)

FilterEIP712DomainChanged is a free log retrieval operation binding the contract event 0x0a6387c9ea3628b88a633bb4f3b151770f70085117a15f9bf3787cda53f13d31.

Solidity: event EIP712DomainChanged()

func (*BillingManagerFilterer) FilterInitialized

func (_BillingManager *BillingManagerFilterer) FilterInitialized(opts *bind.FilterOpts) (*BillingManagerInitializedIterator, error)

FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498.

Solidity: event Initialized(uint8 version)

func (*BillingManagerFilterer) FilterNetworkWithdrawCompleted

func (_BillingManager *BillingManagerFilterer) FilterNetworkWithdrawCompleted(opts *bind.FilterOpts, depositAssetKey []string, userAddr []common.Address) (*BillingManagerNetworkWithdrawCompletedIterator, error)

FilterNetworkWithdrawCompleted is a free log retrieval operation binding the contract event 0xf72e4018008bb0ada87515fbd23be8639327f3e5c56c767bade1791a8cf98aaa.

Solidity: event NetworkWithdrawCompleted(string indexed depositAssetKey, address indexed userAddr, uint256 amountToWithdraw)

func (*BillingManagerFilterer) FilterRewardsWithdrawn

func (_BillingManager *BillingManagerFilterer) FilterRewardsWithdrawn(opts *bind.FilterOpts, depositAssetKey []string, recipientAddr []common.Address) (*BillingManagerRewardsWithdrawnIterator, error)

FilterRewardsWithdrawn is a free log retrieval operation binding the contract event 0x4da529f8b18684c34deb8621c7d4ab35fe1daea1c726cdb6783c93c095d2651a.

Solidity: event RewardsWithdrawn(string indexed depositAssetKey, address indexed recipientAddr, uint256 rewardsAmount)

func (*BillingManagerFilterer) FilterUserFundsWithdrawn

func (_BillingManager *BillingManagerFilterer) FilterUserFundsWithdrawn(opts *bind.FilterOpts, depositAssetKey []string, userAddr []common.Address) (*BillingManagerUserFundsWithdrawnIterator, error)

FilterUserFundsWithdrawn is a free log retrieval operation binding the contract event 0xe0dd7f2d0bf336d345c1e8051edf7f753d4bfdc13d35cf30351267de2aa905c8.

Solidity: event UserFundsWithdrawn(string indexed depositAssetKey, address indexed userAddr, uint256 withdrawnAmount)

func (*BillingManagerFilterer) FilterWorkflowExecutionDiscountUpdated

func (_BillingManager *BillingManagerFilterer) FilterWorkflowExecutionDiscountUpdated(opts *bind.FilterOpts, depositAssetKey []string) (*BillingManagerWorkflowExecutionDiscountUpdatedIterator, error)

FilterWorkflowExecutionDiscountUpdated is a free log retrieval operation binding the contract event 0x70c21b53e4a29c6a334ae8d8d80a885023e4749ee873d6594b3f6cbb66140b6b.

Solidity: event WorkflowExecutionDiscountUpdated(string indexed depositAssetKey, uint256 newWorkflowExecutionDiscount, uint256 prevWorkflowExecutionDiscount)

func (*BillingManagerFilterer) ParseAssetDeposited

func (_BillingManager *BillingManagerFilterer) ParseAssetDeposited(log types.Log) (*BillingManagerAssetDeposited, error)

ParseAssetDeposited is a log parse operation binding the contract event 0xfbc2fad7e5ffeb083133f666db8691af5364707e2b5bf9d1f6f93834433aeca4.

Solidity: event AssetDeposited(string indexed depositAssetKey, address tokensSender, address depositRecipient, uint256 depositAmount)

func (*BillingManagerFilterer) ParseDepositAssetAdded

func (_BillingManager *BillingManagerFilterer) ParseDepositAssetAdded(log types.Log) (*BillingManagerDepositAssetAdded, error)

ParseDepositAssetAdded is a log parse operation binding the contract event 0x310a01f49fbf43988aa0ce4a44296f5fc9f1fe442769d2416f1965d6a1cd236e.

Solidity: event DepositAssetAdded(string depositAssetKey, (address,uint256,uint256,bool,bool) depositAssetData)

func (*BillingManagerFilterer) ParseDepositAssetEnabledStatusUpdated

func (_BillingManager *BillingManagerFilterer) ParseDepositAssetEnabledStatusUpdated(log types.Log) (*BillingManagerDepositAssetEnabledStatusUpdated, error)

ParseDepositAssetEnabledStatusUpdated is a log parse operation binding the contract event 0x838dfb07f2f9eda916131303b1c93fcdb2d1f0cfae1f651eee30c8bd44091356.

Solidity: event DepositAssetEnabledStatusUpdated(string indexed depositAssetKey, bool newEnabledStatus)

func (*BillingManagerFilterer) ParseEIP712DomainChanged

func (_BillingManager *BillingManagerFilterer) ParseEIP712DomainChanged(log types.Log) (*BillingManagerEIP712DomainChanged, error)

ParseEIP712DomainChanged is a log parse operation binding the contract event 0x0a6387c9ea3628b88a633bb4f3b151770f70085117a15f9bf3787cda53f13d31.

Solidity: event EIP712DomainChanged()

func (*BillingManagerFilterer) ParseInitialized

func (_BillingManager *BillingManagerFilterer) ParseInitialized(log types.Log) (*BillingManagerInitialized, error)

ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498.

Solidity: event Initialized(uint8 version)

func (*BillingManagerFilterer) ParseNetworkWithdrawCompleted

func (_BillingManager *BillingManagerFilterer) ParseNetworkWithdrawCompleted(log types.Log) (*BillingManagerNetworkWithdrawCompleted, error)

ParseNetworkWithdrawCompleted is a log parse operation binding the contract event 0xf72e4018008bb0ada87515fbd23be8639327f3e5c56c767bade1791a8cf98aaa.

Solidity: event NetworkWithdrawCompleted(string indexed depositAssetKey, address indexed userAddr, uint256 amountToWithdraw)

func (*BillingManagerFilterer) ParseRewardsWithdrawn

func (_BillingManager *BillingManagerFilterer) ParseRewardsWithdrawn(log types.Log) (*BillingManagerRewardsWithdrawn, error)

ParseRewardsWithdrawn is a log parse operation binding the contract event 0x4da529f8b18684c34deb8621c7d4ab35fe1daea1c726cdb6783c93c095d2651a.

Solidity: event RewardsWithdrawn(string indexed depositAssetKey, address indexed recipientAddr, uint256 rewardsAmount)

func (*BillingManagerFilterer) ParseUserFundsWithdrawn

func (_BillingManager *BillingManagerFilterer) ParseUserFundsWithdrawn(log types.Log) (*BillingManagerUserFundsWithdrawn, error)

ParseUserFundsWithdrawn is a log parse operation binding the contract event 0xe0dd7f2d0bf336d345c1e8051edf7f753d4bfdc13d35cf30351267de2aa905c8.

Solidity: event UserFundsWithdrawn(string indexed depositAssetKey, address indexed userAddr, uint256 withdrawnAmount)

func (*BillingManagerFilterer) ParseWorkflowExecutionDiscountUpdated

func (_BillingManager *BillingManagerFilterer) ParseWorkflowExecutionDiscountUpdated(log types.Log) (*BillingManagerWorkflowExecutionDiscountUpdated, error)

ParseWorkflowExecutionDiscountUpdated is a log parse operation binding the contract event 0x70c21b53e4a29c6a334ae8d8d80a885023e4749ee873d6594b3f6cbb66140b6b.

Solidity: event WorkflowExecutionDiscountUpdated(string indexed depositAssetKey, uint256 newWorkflowExecutionDiscount, uint256 prevWorkflowExecutionDiscount)

func (*BillingManagerFilterer) WatchAssetDeposited

func (_BillingManager *BillingManagerFilterer) WatchAssetDeposited(opts *bind.WatchOpts, sink chan<- *BillingManagerAssetDeposited, depositAssetKey []string) (event.Subscription, error)

WatchAssetDeposited is a free log subscription operation binding the contract event 0xfbc2fad7e5ffeb083133f666db8691af5364707e2b5bf9d1f6f93834433aeca4.

Solidity: event AssetDeposited(string indexed depositAssetKey, address tokensSender, address depositRecipient, uint256 depositAmount)

func (*BillingManagerFilterer) WatchDepositAssetAdded

func (_BillingManager *BillingManagerFilterer) WatchDepositAssetAdded(opts *bind.WatchOpts, sink chan<- *BillingManagerDepositAssetAdded) (event.Subscription, error)

WatchDepositAssetAdded is a free log subscription operation binding the contract event 0x310a01f49fbf43988aa0ce4a44296f5fc9f1fe442769d2416f1965d6a1cd236e.

Solidity: event DepositAssetAdded(string depositAssetKey, (address,uint256,uint256,bool,bool) depositAssetData)

func (*BillingManagerFilterer) WatchDepositAssetEnabledStatusUpdated

func (_BillingManager *BillingManagerFilterer) WatchDepositAssetEnabledStatusUpdated(opts *bind.WatchOpts, sink chan<- *BillingManagerDepositAssetEnabledStatusUpdated, depositAssetKey []string) (event.Subscription, error)

WatchDepositAssetEnabledStatusUpdated is a free log subscription operation binding the contract event 0x838dfb07f2f9eda916131303b1c93fcdb2d1f0cfae1f651eee30c8bd44091356.

Solidity: event DepositAssetEnabledStatusUpdated(string indexed depositAssetKey, bool newEnabledStatus)

func (*BillingManagerFilterer) WatchEIP712DomainChanged

func (_BillingManager *BillingManagerFilterer) WatchEIP712DomainChanged(opts *bind.WatchOpts, sink chan<- *BillingManagerEIP712DomainChanged) (event.Subscription, error)

WatchEIP712DomainChanged is a free log subscription operation binding the contract event 0x0a6387c9ea3628b88a633bb4f3b151770f70085117a15f9bf3787cda53f13d31.

Solidity: event EIP712DomainChanged()

func (*BillingManagerFilterer) WatchInitialized

func (_BillingManager *BillingManagerFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *BillingManagerInitialized) (event.Subscription, error)

WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498.

Solidity: event Initialized(uint8 version)

func (*BillingManagerFilterer) WatchNetworkWithdrawCompleted

func (_BillingManager *BillingManagerFilterer) WatchNetworkWithdrawCompleted(opts *bind.WatchOpts, sink chan<- *BillingManagerNetworkWithdrawCompleted, depositAssetKey []string, userAddr []common.Address) (event.Subscription, error)

WatchNetworkWithdrawCompleted is a free log subscription operation binding the contract event 0xf72e4018008bb0ada87515fbd23be8639327f3e5c56c767bade1791a8cf98aaa.

Solidity: event NetworkWithdrawCompleted(string indexed depositAssetKey, address indexed userAddr, uint256 amountToWithdraw)

func (*BillingManagerFilterer) WatchRewardsWithdrawn

func (_BillingManager *BillingManagerFilterer) WatchRewardsWithdrawn(opts *bind.WatchOpts, sink chan<- *BillingManagerRewardsWithdrawn, depositAssetKey []string, recipientAddr []common.Address) (event.Subscription, error)

WatchRewardsWithdrawn is a free log subscription operation binding the contract event 0x4da529f8b18684c34deb8621c7d4ab35fe1daea1c726cdb6783c93c095d2651a.

Solidity: event RewardsWithdrawn(string indexed depositAssetKey, address indexed recipientAddr, uint256 rewardsAmount)

func (*BillingManagerFilterer) WatchUserFundsWithdrawn

func (_BillingManager *BillingManagerFilterer) WatchUserFundsWithdrawn(opts *bind.WatchOpts, sink chan<- *BillingManagerUserFundsWithdrawn, depositAssetKey []string, userAddr []common.Address) (event.Subscription, error)

WatchUserFundsWithdrawn is a free log subscription operation binding the contract event 0xe0dd7f2d0bf336d345c1e8051edf7f753d4bfdc13d35cf30351267de2aa905c8.

Solidity: event UserFundsWithdrawn(string indexed depositAssetKey, address indexed userAddr, uint256 withdrawnAmount)

func (*BillingManagerFilterer) WatchWorkflowExecutionDiscountUpdated

func (_BillingManager *BillingManagerFilterer) WatchWorkflowExecutionDiscountUpdated(opts *bind.WatchOpts, sink chan<- *BillingManagerWorkflowExecutionDiscountUpdated, depositAssetKey []string) (event.Subscription, error)

WatchWorkflowExecutionDiscountUpdated is a free log subscription operation binding the contract event 0x70c21b53e4a29c6a334ae8d8d80a885023e4749ee873d6594b3f6cbb66140b6b.

Solidity: event WorkflowExecutionDiscountUpdated(string indexed depositAssetKey, uint256 newWorkflowExecutionDiscount, uint256 prevWorkflowExecutionDiscount)

type BillingManagerInitialized

type BillingManagerInitialized struct {
	Version uint8
	Raw     types.Log // Blockchain specific contextual infos
}

BillingManagerInitialized represents a Initialized event raised by the BillingManager contract.

type BillingManagerInitializedIterator

type BillingManagerInitializedIterator struct {
	Event *BillingManagerInitialized // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the BillingManager contract.

func (*BillingManagerInitializedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerInitializedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerInitializedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerNetworkWithdrawCompleted

type BillingManagerNetworkWithdrawCompleted struct {
	DepositAssetKey  common.Hash
	UserAddr         common.Address
	AmountToWithdraw *big.Int
	Raw              types.Log // Blockchain specific contextual infos
}

BillingManagerNetworkWithdrawCompleted represents a NetworkWithdrawCompleted event raised by the BillingManager contract.

type BillingManagerNetworkWithdrawCompletedIterator

type BillingManagerNetworkWithdrawCompletedIterator struct {
	Event *BillingManagerNetworkWithdrawCompleted // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerNetworkWithdrawCompletedIterator is returned from FilterNetworkWithdrawCompleted and is used to iterate over the raw logs and unpacked data for NetworkWithdrawCompleted events raised by the BillingManager contract.

func (*BillingManagerNetworkWithdrawCompletedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerNetworkWithdrawCompletedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerNetworkWithdrawCompletedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerRaw

type BillingManagerRaw struct {
	Contract *BillingManager // Generic contract binding to access the raw methods on
}

BillingManagerRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*BillingManagerRaw) Call

func (_BillingManager *BillingManagerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*BillingManagerRaw) Transact

func (_BillingManager *BillingManagerRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*BillingManagerRaw) Transfer

func (_BillingManager *BillingManagerRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type BillingManagerRewardsWithdrawn

type BillingManagerRewardsWithdrawn struct {
	DepositAssetKey common.Hash
	RecipientAddr   common.Address
	RewardsAmount   *big.Int
	Raw             types.Log // Blockchain specific contextual infos
}

BillingManagerRewardsWithdrawn represents a RewardsWithdrawn event raised by the BillingManager contract.

type BillingManagerRewardsWithdrawnIterator

type BillingManagerRewardsWithdrawnIterator struct {
	Event *BillingManagerRewardsWithdrawn // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerRewardsWithdrawnIterator is returned from FilterRewardsWithdrawn and is used to iterate over the raw logs and unpacked data for RewardsWithdrawn events raised by the BillingManager contract.

func (*BillingManagerRewardsWithdrawnIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerRewardsWithdrawnIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerRewardsWithdrawnIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerSession

type BillingManagerSession struct {
	Contract     *BillingManager   // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

BillingManagerSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*BillingManagerSession) AddDepositAssets

func (_BillingManager *BillingManagerSession) AddDepositAssets(_depositAssetInfoArr []IBillingManagerDepositAssetInfo) (*types.Transaction, error)

AddDepositAssets is a paid mutator transaction binding the contract method 0x7c1c6fba.

Solidity: function addDepositAssets((string,(address,uint256,uint256,bool,bool))[] _depositAssetInfoArr) returns()

func (*BillingManagerSession) Deposit

func (_BillingManager *BillingManagerSession) Deposit(_depositAssetKey string, _recipientAddr common.Address, _depositAmount *big.Int) (*types.Transaction, error)

Deposit is a paid mutator transaction binding the contract method 0x2a48ac9a.

Solidity: function deposit(string _depositAssetKey, address _recipientAddr, uint256 _depositAmount) payable returns()

func (*BillingManagerSession) DepositWithPermit

func (_BillingManager *BillingManagerSession) DepositWithPermit(_depositAssetKey string, _recipientAddr common.Address, _depositAmount *big.Int, _sigExpirationTime *big.Int, _v uint8, _r [32]byte, _s [32]byte) (*types.Transaction, error)

DepositWithPermit is a paid mutator transaction binding the contract method 0x3666cec5.

Solidity: function depositWithPermit(string _depositAssetKey, address _recipientAddr, uint256 _depositAmount, uint256 _sigExpirationTime, uint8 _v, bytes32 _r, bytes32 _s) returns()

func (*BillingManagerSession) Eip712Domain

func (_BillingManager *BillingManagerSession) Eip712Domain() (struct {
	Fields            [1]byte
	Name              string
	Version           string
	ChainId           *big.Int
	VerifyingContract common.Address
	Salt              [32]byte
	Extensions        []*big.Int
}, error)

Eip712Domain is a free data retrieval call binding the contract method 0x84b0196e.

Solidity: function eip712Domain() view returns(bytes1 fields, string name, string version, uint256 chainId, address verifyingContract, bytes32 salt, uint256[] extensions)

func (*BillingManagerSession) GetDepositAssetsInfo

func (_BillingManager *BillingManagerSession) GetDepositAssetsInfo(_depositAssetKeysArr []string) ([]IBillingManagerDepositAssetInfo, error)

GetDepositAssetsInfo is a free data retrieval call binding the contract method 0x37913512.

Solidity: function getDepositAssetsInfo(string[] _depositAssetKeysArr) view returns((string,(address,uint256,uint256,bool,bool))[] _depositAssetsInfoArr)

func (*BillingManagerSession) GetExistingUsers

func (_BillingManager *BillingManagerSession) GetExistingUsers(_offset *big.Int, _limit *big.Int) ([]common.Address, error)

GetExistingUsers is a free data retrieval call binding the contract method 0x48cf8bab.

Solidity: function getExistingUsers(uint256 _offset, uint256 _limit) view returns(address[])

func (*BillingManagerSession) GetInjector

func (_BillingManager *BillingManagerSession) GetInjector() (common.Address, error)

GetInjector is a free data retrieval call binding the contract method 0x3e3b5b19.

Solidity: function getInjector() view returns(address injector_)

func (*BillingManagerSession) GetNetworkRewards

func (_BillingManager *BillingManagerSession) GetNetworkRewards(_depositAssetKey string) (*big.Int, error)

GetNetworkRewards is a free data retrieval call binding the contract method 0x5a53669c.

Solidity: function getNetworkRewards(string _depositAssetKey) view returns(uint256)

func (*BillingManagerSession) GetSupportedDepositAssetKeys

func (_BillingManager *BillingManagerSession) GetSupportedDepositAssetKeys() ([]string, error)

GetSupportedDepositAssetKeys is a free data retrieval call binding the contract method 0xa266f963.

Solidity: function getSupportedDepositAssetKeys() view returns(string[])

func (*BillingManagerSession) GetTotalUsersCount

func (_BillingManager *BillingManagerSession) GetTotalUsersCount() (*big.Int, error)

GetTotalUsersCount is a free data retrieval call binding the contract method 0x0561010c.

Solidity: function getTotalUsersCount() view returns(uint256)

func (*BillingManagerSession) GetUserDepositAssetKeys

func (_BillingManager *BillingManagerSession) GetUserDepositAssetKeys(_userAddr common.Address) ([]string, error)

GetUserDepositAssetKeys is a free data retrieval call binding the contract method 0xa19ddf5b.

Solidity: function getUserDepositAssetKeys(address _userAddr) view returns(string[])

func (*BillingManagerSession) GetUserDepositInfo

func (_BillingManager *BillingManagerSession) GetUserDepositInfo(_userAddr common.Address, _depositAssetKey string) (IBillingManagerUserDepositInfo, error)

GetUserDepositInfo is a free data retrieval call binding the contract method 0xf3883e26.

Solidity: function getUserDepositInfo(address _userAddr, string _depositAssetKey) view returns((address,uint256))

func (*BillingManagerSession) GetUserWithdrawNonce

func (_BillingManager *BillingManagerSession) GetUserWithdrawNonce(_userAddr common.Address) (*big.Int, error)

GetUserWithdrawNonce is a free data retrieval call binding the contract method 0xde2f5f2e.

Solidity: function getUserWithdrawNonce(address _userAddr) view returns(uint256)

func (*BillingManagerSession) GetUsersDepositInfo

func (_BillingManager *BillingManagerSession) GetUsersDepositInfo(_depositAssetKey string, _offset *big.Int, _limit *big.Int) ([]IBillingManagerUserDepositInfo, error)

GetUsersDepositInfo is a free data retrieval call binding the contract method 0x7d7f8384.

Solidity: function getUsersDepositInfo(string _depositAssetKey, uint256 _offset, uint256 _limit) view returns((address,uint256)[] _usersInfoArr)

func (*BillingManagerSession) Initialize

func (_BillingManager *BillingManagerSession) Initialize(_nativeDepositAssetInfo IBillingManagerDepositAssetInfo) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0x7ac174f5.

Solidity: function initialize((string,(address,uint256,uint256,bool,bool)) _nativeDepositAssetInfo) returns()

func (*BillingManagerSession) IsDepositAssetEnabled

func (_BillingManager *BillingManagerSession) IsDepositAssetEnabled(_depositAssetKey string) (bool, error)

IsDepositAssetEnabled is a free data retrieval call binding the contract method 0x2b888682.

Solidity: function isDepositAssetEnabled(string _depositAssetKey) view returns(bool)

func (*BillingManagerSession) IsDepositAssetPermitable

func (_BillingManager *BillingManagerSession) IsDepositAssetPermitable(_depositAssetKey string) (bool, error)

IsDepositAssetPermitable is a free data retrieval call binding the contract method 0xc4710204.

Solidity: function isDepositAssetPermitable(string _depositAssetKey) view returns(bool)

func (*BillingManagerSession) IsDepositAssetSupported

func (_BillingManager *BillingManagerSession) IsDepositAssetSupported(_depositAssetKey string) (bool, error)

IsDepositAssetSupported is a free data retrieval call binding the contract method 0x606a679f.

Solidity: function isDepositAssetSupported(string _depositAssetKey) view returns(bool)

func (*BillingManagerSession) IsNativeDepositAsset

func (_BillingManager *BillingManagerSession) IsNativeDepositAsset(_depositAssetKey string) (bool, error)

IsNativeDepositAsset is a free data retrieval call binding the contract method 0xafb3f30a.

Solidity: function isNativeDepositAsset(string _depositAssetKey) view returns(bool)

func (*BillingManagerSession) NativeDepositAssetKey

func (_BillingManager *BillingManagerSession) NativeDepositAssetKey() (string, error)

NativeDepositAssetKey is a free data retrieval call binding the contract method 0x33c25326.

Solidity: function nativeDepositAssetKey() view returns(string)

func (*BillingManagerSession) NetworkWithdraw

func (_BillingManager *BillingManagerSession) NetworkWithdraw(_networkWithdrawArr []IBillingManagerNetworkWithdrawInfo) (*types.Transaction, error)

NetworkWithdraw is a paid mutator transaction binding the contract method 0x7ad882eb.

Solidity: function networkWithdraw((string,address,uint256)[] _networkWithdrawArr) returns()

func (*BillingManagerSession) Receive

func (_BillingManager *BillingManagerSession) Receive() (*types.Transaction, error)

Receive is a paid mutator transaction binding the contract receive function.

Solidity: receive() payable returns()

func (*BillingManagerSession) SetDependencies

func (_BillingManager *BillingManagerSession) SetDependencies(_contractsRegistryAddr common.Address, arg1 []byte) (*types.Transaction, error)

SetDependencies is a paid mutator transaction binding the contract method 0x69130451.

Solidity: function setDependencies(address _contractsRegistryAddr, bytes ) returns()

func (*BillingManagerSession) SetInjector

func (_BillingManager *BillingManagerSession) SetInjector(injector_ common.Address) (*types.Transaction, error)

SetInjector is a paid mutator transaction binding the contract method 0x8cb941cc.

Solidity: function setInjector(address injector_) returns()

func (*BillingManagerSession) UpdateDepositAssetEnabledStatus

func (_BillingManager *BillingManagerSession) UpdateDepositAssetEnabledStatus(_depositAssetKey string, _newEnabledStatus bool) (*types.Transaction, error)

UpdateDepositAssetEnabledStatus is a paid mutator transaction binding the contract method 0xc172bfd7.

Solidity: function updateDepositAssetEnabledStatus(string _depositAssetKey, bool _newEnabledStatus) returns()

func (*BillingManagerSession) UpdateWorkflowExecutionDiscount

func (_BillingManager *BillingManagerSession) UpdateWorkflowExecutionDiscount(_depositAssetKey string, _newWorkflowExecutionDiscount *big.Int) (*types.Transaction, error)

UpdateWorkflowExecutionDiscount is a paid mutator transaction binding the contract method 0xc66ae1e8.

Solidity: function updateWorkflowExecutionDiscount(string _depositAssetKey, uint256 _newWorkflowExecutionDiscount) returns()

func (*BillingManagerSession) WithdrawFunds

func (_BillingManager *BillingManagerSession) WithdrawFunds(_depositAssetKey string, _amountToWithdraw *big.Int, _sigExpirationTime *big.Int, _v uint8, _r [32]byte, _s [32]byte) (*types.Transaction, error)

WithdrawFunds is a paid mutator transaction binding the contract method 0x27a64f66.

Solidity: function withdrawFunds(string _depositAssetKey, uint256 _amountToWithdraw, uint256 _sigExpirationTime, uint8 _v, bytes32 _r, bytes32 _s) returns()

func (*BillingManagerSession) WithdrawNetworkRewards

func (_BillingManager *BillingManagerSession) WithdrawNetworkRewards(_depositAssetKey string) (*types.Transaction, error)

WithdrawNetworkRewards is a paid mutator transaction binding the contract method 0x16fb02dd.

Solidity: function withdrawNetworkRewards(string _depositAssetKey) returns()

type BillingManagerTransactor

type BillingManagerTransactor struct {
	// contains filtered or unexported fields
}

BillingManagerTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewBillingManagerTransactor

func NewBillingManagerTransactor(address common.Address, transactor bind.ContractTransactor) (*BillingManagerTransactor, error)

NewBillingManagerTransactor creates a new write-only instance of BillingManager, bound to a specific deployed contract.

func (*BillingManagerTransactor) AddDepositAssets

func (_BillingManager *BillingManagerTransactor) AddDepositAssets(opts *bind.TransactOpts, _depositAssetInfoArr []IBillingManagerDepositAssetInfo) (*types.Transaction, error)

AddDepositAssets is a paid mutator transaction binding the contract method 0x7c1c6fba.

Solidity: function addDepositAssets((string,(address,uint256,uint256,bool,bool))[] _depositAssetInfoArr) returns()

func (*BillingManagerTransactor) Deposit

func (_BillingManager *BillingManagerTransactor) Deposit(opts *bind.TransactOpts, _depositAssetKey string, _recipientAddr common.Address, _depositAmount *big.Int) (*types.Transaction, error)

Deposit is a paid mutator transaction binding the contract method 0x2a48ac9a.

Solidity: function deposit(string _depositAssetKey, address _recipientAddr, uint256 _depositAmount) payable returns()

func (*BillingManagerTransactor) DepositWithPermit

func (_BillingManager *BillingManagerTransactor) DepositWithPermit(opts *bind.TransactOpts, _depositAssetKey string, _recipientAddr common.Address, _depositAmount *big.Int, _sigExpirationTime *big.Int, _v uint8, _r [32]byte, _s [32]byte) (*types.Transaction, error)

DepositWithPermit is a paid mutator transaction binding the contract method 0x3666cec5.

Solidity: function depositWithPermit(string _depositAssetKey, address _recipientAddr, uint256 _depositAmount, uint256 _sigExpirationTime, uint8 _v, bytes32 _r, bytes32 _s) returns()

func (*BillingManagerTransactor) Initialize

func (_BillingManager *BillingManagerTransactor) Initialize(opts *bind.TransactOpts, _nativeDepositAssetInfo IBillingManagerDepositAssetInfo) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0x7ac174f5.

Solidity: function initialize((string,(address,uint256,uint256,bool,bool)) _nativeDepositAssetInfo) returns()

func (*BillingManagerTransactor) NetworkWithdraw

func (_BillingManager *BillingManagerTransactor) NetworkWithdraw(opts *bind.TransactOpts, _networkWithdrawArr []IBillingManagerNetworkWithdrawInfo) (*types.Transaction, error)

NetworkWithdraw is a paid mutator transaction binding the contract method 0x7ad882eb.

Solidity: function networkWithdraw((string,address,uint256)[] _networkWithdrawArr) returns()

func (*BillingManagerTransactor) Receive

func (_BillingManager *BillingManagerTransactor) Receive(opts *bind.TransactOpts) (*types.Transaction, error)

Receive is a paid mutator transaction binding the contract receive function.

Solidity: receive() payable returns()

func (*BillingManagerTransactor) SetDependencies

func (_BillingManager *BillingManagerTransactor) SetDependencies(opts *bind.TransactOpts, _contractsRegistryAddr common.Address, arg1 []byte) (*types.Transaction, error)

SetDependencies is a paid mutator transaction binding the contract method 0x69130451.

Solidity: function setDependencies(address _contractsRegistryAddr, bytes ) returns()

func (*BillingManagerTransactor) SetInjector

func (_BillingManager *BillingManagerTransactor) SetInjector(opts *bind.TransactOpts, injector_ common.Address) (*types.Transaction, error)

SetInjector is a paid mutator transaction binding the contract method 0x8cb941cc.

Solidity: function setInjector(address injector_) returns()

func (*BillingManagerTransactor) UpdateDepositAssetEnabledStatus

func (_BillingManager *BillingManagerTransactor) UpdateDepositAssetEnabledStatus(opts *bind.TransactOpts, _depositAssetKey string, _newEnabledStatus bool) (*types.Transaction, error)

UpdateDepositAssetEnabledStatus is a paid mutator transaction binding the contract method 0xc172bfd7.

Solidity: function updateDepositAssetEnabledStatus(string _depositAssetKey, bool _newEnabledStatus) returns()

func (*BillingManagerTransactor) UpdateWorkflowExecutionDiscount

func (_BillingManager *BillingManagerTransactor) UpdateWorkflowExecutionDiscount(opts *bind.TransactOpts, _depositAssetKey string, _newWorkflowExecutionDiscount *big.Int) (*types.Transaction, error)

UpdateWorkflowExecutionDiscount is a paid mutator transaction binding the contract method 0xc66ae1e8.

Solidity: function updateWorkflowExecutionDiscount(string _depositAssetKey, uint256 _newWorkflowExecutionDiscount) returns()

func (*BillingManagerTransactor) WithdrawFunds

func (_BillingManager *BillingManagerTransactor) WithdrawFunds(opts *bind.TransactOpts, _depositAssetKey string, _amountToWithdraw *big.Int, _sigExpirationTime *big.Int, _v uint8, _r [32]byte, _s [32]byte) (*types.Transaction, error)

WithdrawFunds is a paid mutator transaction binding the contract method 0x27a64f66.

Solidity: function withdrawFunds(string _depositAssetKey, uint256 _amountToWithdraw, uint256 _sigExpirationTime, uint8 _v, bytes32 _r, bytes32 _s) returns()

func (*BillingManagerTransactor) WithdrawNetworkRewards

func (_BillingManager *BillingManagerTransactor) WithdrawNetworkRewards(opts *bind.TransactOpts, _depositAssetKey string) (*types.Transaction, error)

WithdrawNetworkRewards is a paid mutator transaction binding the contract method 0x16fb02dd.

Solidity: function withdrawNetworkRewards(string _depositAssetKey) returns()

type BillingManagerTransactorRaw

type BillingManagerTransactorRaw struct {
	Contract *BillingManagerTransactor // Generic write-only contract binding to access the raw methods on
}

BillingManagerTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*BillingManagerTransactorRaw) Transact

func (_BillingManager *BillingManagerTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*BillingManagerTransactorRaw) Transfer

func (_BillingManager *BillingManagerTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type BillingManagerTransactorSession

type BillingManagerTransactorSession struct {
	Contract     *BillingManagerTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts         // Transaction auth options to use throughout this session
}

BillingManagerTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*BillingManagerTransactorSession) AddDepositAssets

func (_BillingManager *BillingManagerTransactorSession) AddDepositAssets(_depositAssetInfoArr []IBillingManagerDepositAssetInfo) (*types.Transaction, error)

AddDepositAssets is a paid mutator transaction binding the contract method 0x7c1c6fba.

Solidity: function addDepositAssets((string,(address,uint256,uint256,bool,bool))[] _depositAssetInfoArr) returns()

func (*BillingManagerTransactorSession) Deposit

func (_BillingManager *BillingManagerTransactorSession) Deposit(_depositAssetKey string, _recipientAddr common.Address, _depositAmount *big.Int) (*types.Transaction, error)

Deposit is a paid mutator transaction binding the contract method 0x2a48ac9a.

Solidity: function deposit(string _depositAssetKey, address _recipientAddr, uint256 _depositAmount) payable returns()

func (*BillingManagerTransactorSession) DepositWithPermit

func (_BillingManager *BillingManagerTransactorSession) DepositWithPermit(_depositAssetKey string, _recipientAddr common.Address, _depositAmount *big.Int, _sigExpirationTime *big.Int, _v uint8, _r [32]byte, _s [32]byte) (*types.Transaction, error)

DepositWithPermit is a paid mutator transaction binding the contract method 0x3666cec5.

Solidity: function depositWithPermit(string _depositAssetKey, address _recipientAddr, uint256 _depositAmount, uint256 _sigExpirationTime, uint8 _v, bytes32 _r, bytes32 _s) returns()

func (*BillingManagerTransactorSession) Initialize

func (_BillingManager *BillingManagerTransactorSession) Initialize(_nativeDepositAssetInfo IBillingManagerDepositAssetInfo) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0x7ac174f5.

Solidity: function initialize((string,(address,uint256,uint256,bool,bool)) _nativeDepositAssetInfo) returns()

func (*BillingManagerTransactorSession) NetworkWithdraw

func (_BillingManager *BillingManagerTransactorSession) NetworkWithdraw(_networkWithdrawArr []IBillingManagerNetworkWithdrawInfo) (*types.Transaction, error)

NetworkWithdraw is a paid mutator transaction binding the contract method 0x7ad882eb.

Solidity: function networkWithdraw((string,address,uint256)[] _networkWithdrawArr) returns()

func (*BillingManagerTransactorSession) Receive

func (_BillingManager *BillingManagerTransactorSession) Receive() (*types.Transaction, error)

Receive is a paid mutator transaction binding the contract receive function.

Solidity: receive() payable returns()

func (*BillingManagerTransactorSession) SetDependencies

func (_BillingManager *BillingManagerTransactorSession) SetDependencies(_contractsRegistryAddr common.Address, arg1 []byte) (*types.Transaction, error)

SetDependencies is a paid mutator transaction binding the contract method 0x69130451.

Solidity: function setDependencies(address _contractsRegistryAddr, bytes ) returns()

func (*BillingManagerTransactorSession) SetInjector

func (_BillingManager *BillingManagerTransactorSession) SetInjector(injector_ common.Address) (*types.Transaction, error)

SetInjector is a paid mutator transaction binding the contract method 0x8cb941cc.

Solidity: function setInjector(address injector_) returns()

func (*BillingManagerTransactorSession) UpdateDepositAssetEnabledStatus

func (_BillingManager *BillingManagerTransactorSession) UpdateDepositAssetEnabledStatus(_depositAssetKey string, _newEnabledStatus bool) (*types.Transaction, error)

UpdateDepositAssetEnabledStatus is a paid mutator transaction binding the contract method 0xc172bfd7.

Solidity: function updateDepositAssetEnabledStatus(string _depositAssetKey, bool _newEnabledStatus) returns()

func (*BillingManagerTransactorSession) UpdateWorkflowExecutionDiscount

func (_BillingManager *BillingManagerTransactorSession) UpdateWorkflowExecutionDiscount(_depositAssetKey string, _newWorkflowExecutionDiscount *big.Int) (*types.Transaction, error)

UpdateWorkflowExecutionDiscount is a paid mutator transaction binding the contract method 0xc66ae1e8.

Solidity: function updateWorkflowExecutionDiscount(string _depositAssetKey, uint256 _newWorkflowExecutionDiscount) returns()

func (*BillingManagerTransactorSession) WithdrawFunds

func (_BillingManager *BillingManagerTransactorSession) WithdrawFunds(_depositAssetKey string, _amountToWithdraw *big.Int, _sigExpirationTime *big.Int, _v uint8, _r [32]byte, _s [32]byte) (*types.Transaction, error)

WithdrawFunds is a paid mutator transaction binding the contract method 0x27a64f66.

Solidity: function withdrawFunds(string _depositAssetKey, uint256 _amountToWithdraw, uint256 _sigExpirationTime, uint8 _v, bytes32 _r, bytes32 _s) returns()

func (*BillingManagerTransactorSession) WithdrawNetworkRewards

func (_BillingManager *BillingManagerTransactorSession) WithdrawNetworkRewards(_depositAssetKey string) (*types.Transaction, error)

WithdrawNetworkRewards is a paid mutator transaction binding the contract method 0x16fb02dd.

Solidity: function withdrawNetworkRewards(string _depositAssetKey) returns()

type BillingManagerUserFundsWithdrawn

type BillingManagerUserFundsWithdrawn struct {
	DepositAssetKey common.Hash
	UserAddr        common.Address
	WithdrawnAmount *big.Int
	Raw             types.Log // Blockchain specific contextual infos
}

BillingManagerUserFundsWithdrawn represents a UserFundsWithdrawn event raised by the BillingManager contract.

type BillingManagerUserFundsWithdrawnIterator

type BillingManagerUserFundsWithdrawnIterator struct {
	Event *BillingManagerUserFundsWithdrawn // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerUserFundsWithdrawnIterator is returned from FilterUserFundsWithdrawn and is used to iterate over the raw logs and unpacked data for UserFundsWithdrawn events raised by the BillingManager contract.

func (*BillingManagerUserFundsWithdrawnIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerUserFundsWithdrawnIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerUserFundsWithdrawnIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type BillingManagerWorkflowExecutionDiscountUpdated

type BillingManagerWorkflowExecutionDiscountUpdated struct {
	DepositAssetKey               common.Hash
	NewWorkflowExecutionDiscount  *big.Int
	PrevWorkflowExecutionDiscount *big.Int
	Raw                           types.Log // Blockchain specific contextual infos
}

BillingManagerWorkflowExecutionDiscountUpdated represents a WorkflowExecutionDiscountUpdated event raised by the BillingManager contract.

type BillingManagerWorkflowExecutionDiscountUpdatedIterator

type BillingManagerWorkflowExecutionDiscountUpdatedIterator struct {
	Event *BillingManagerWorkflowExecutionDiscountUpdated // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

BillingManagerWorkflowExecutionDiscountUpdatedIterator is returned from FilterWorkflowExecutionDiscountUpdated and is used to iterate over the raw logs and unpacked data for WorkflowExecutionDiscountUpdated events raised by the BillingManager contract.

func (*BillingManagerWorkflowExecutionDiscountUpdatedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*BillingManagerWorkflowExecutionDiscountUpdatedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*BillingManagerWorkflowExecutionDiscountUpdatedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type IBillingManagerDepositAssetData

type IBillingManagerDepositAssetData struct {
	TokenAddr                 common.Address
	WorkflowExecutionDiscount *big.Int
	NetworkRewards            *big.Int
	IsPermitable              bool
	IsEnabled                 bool
}

IBillingManagerDepositAssetData is an auto generated low-level Go binding around an user-defined struct.

type IBillingManagerDepositAssetInfo

type IBillingManagerDepositAssetInfo struct {
	DepositAssetKey  string
	DepositAssetData IBillingManagerDepositAssetData
}

IBillingManagerDepositAssetInfo is an auto generated low-level Go binding around an user-defined struct.

type IBillingManagerNetworkWithdrawInfo

type IBillingManagerNetworkWithdrawInfo struct {
	DepositAssetKey  string
	UserAddr         common.Address
	AmountToWithdraw *big.Int
}

IBillingManagerNetworkWithdrawInfo is an auto generated low-level Go binding around an user-defined struct.

type IBillingManagerUserDepositInfo

type IBillingManagerUserDepositInfo struct {
	UserAddr            common.Address
	UserDepositedAmount *big.Int
}

IBillingManagerUserDepositInfo is an auto generated low-level Go binding around an user-defined struct.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL