vrf_coordinator_v2

package
v1.10.17 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2021 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var VRFCoordinatorV2ABI = VRFCoordinatorV2MetaData.ABI
View Source
var VRFCoordinatorV2Bin = VRFCoordinatorV2MetaData.Bin
View Source
var VRFCoordinatorV2MetaData = &bind.MetaData{
	ABI: "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"link\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"blockhashStore\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"linkEthFeed\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"minimumRequestConfirmations\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"fulfillmentFlatFeeLinkPPM\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"maxGasLimit\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"stalenessSeconds\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"gasAfterPaymentCalculation\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint96\",\"name\":\"minimumSubscriptionBalance\",\"type\":\"uint96\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"fallbackWeiPerUnitLink\",\"type\":\"int256\"}],\"name\":\"ConfigSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"FundsRecovered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"keyHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oracle\",\"type\":\"address\"}],\"name\":\"ProvingKeyDeregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"keyHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oracle\",\"type\":\"address\"}],\"name\":\"ProvingKeyRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"requestId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"output\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"name\":\"RandomWordsFulfilled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"keyHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"requestId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"preSeed\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"minimumRequestConfirmations\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"callbackGasLimit\",\"type\":\"uint32\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"numWords\",\"type\":\"uint32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RandomWordsRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"SubscriptionCanceled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"consumer\",\"type\":\"address\"}],\"name\":\"SubscriptionConsumerAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"consumer\",\"type\":\"address\"}],\"name\":\"SubscriptionConsumerRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"SubscriptionCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"SubscriptionDefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"SubscriptionFunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"SubscriptionOwnerTransferRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"SubscriptionOwnerTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BLOCKHASH_STORE\",\"outputs\":[{\"internalType\":\"contractBlockhashStoreInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LINK\",\"outputs\":[{\"internalType\":\"contractLinkTokenInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LINK_ETH_FEED\",\"outputs\":[{\"internalType\":\"contractAggregatorV3Interface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CONSUMERS\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_NUM_WORDS\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REQUEST_CONFIRMATIONS\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MIN_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"}],\"name\":\"acceptSubscriptionOwnerTransfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"consumer\",\"type\":\"address\"}],\"name\":\"addConsumer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"cancelSubscription\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createSubscription\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint96\",\"name\":\"amount\",\"type\":\"uint96\"}],\"name\":\"defundSubscription\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[2]\",\"name\":\"publicProvingKey\",\"type\":\"uint256[2]\"}],\"name\":\"deregisterProvingKey\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256[2]\",\"name\":\"pk\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"gamma\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256\",\"name\":\"c\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"s\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"seed\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"uWitness\",\"type\":\"address\"},{\"internalType\":\"uint256[2]\",\"name\":\"cGammaWitness\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"sHashWitness\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256\",\"name\":\"zInv\",\"type\":\"uint256\"}],\"internalType\":\"structVRF.Proof\",\"name\":\"proof\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"blockNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"callbackGasLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"numWords\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"internalType\":\"structVRFCoordinatorV2.RequestCommitment\",\"name\":\"rc\",\"type\":\"tuple\"}],\"name\":\"fulfillRandomWords\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"requestId\",\"type\":\"uint256\"}],\"name\":\"getCommitment\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getConfig\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"minimumRequestConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"fulfillmentFlatFeeLinkPPM\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maxGasLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"stalenessSeconds\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"gasAfterPaymentCalculation\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"minimumSubscriptionBalance\",\"type\":\"uint96\"},{\"internalType\":\"int256\",\"name\":\"fallbackWeiPerUnitLink\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"}],\"name\":\"getSubscription\",\"outputs\":[{\"internalType\":\"uint96\",\"name\":\"balance\",\"type\":\"uint96\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"consumers\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[2]\",\"name\":\"publicKey\",\"type\":\"uint256[2]\"}],\"name\":\"hashOfKey\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onTokenTransfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint96\",\"name\":\"amount\",\"type\":\"uint96\"}],\"name\":\"oracleWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"oracle\",\"type\":\"address\"},{\"internalType\":\"uint256[2]\",\"name\":\"publicProvingKey\",\"type\":\"uint256[2]\"}],\"name\":\"registerProvingKey\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"consumer\",\"type\":\"address\"}],\"name\":\"removeConsumer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"keyHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"uint16\",\"name\":\"requestConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"callbackGasLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"numWords\",\"type\":\"uint32\"}],\"name\":\"requestRandomWords\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"subId\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"requestSubscriptionOwnerTransfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"s_totalBalance\",\"outputs\":[{\"internalType\":\"uint96\",\"name\":\"\",\"type\":\"uint96\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"minimumRequestConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"fulfillmentFlatFeeLinkPPM\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maxGasLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"stalenessSeconds\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"gasAfterPaymentCalculation\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"minimumSubscriptionBalance\",\"type\":\"uint96\"},{\"internalType\":\"int256\",\"name\":\"fallbackWeiPerUnitLink\",\"type\":\"int256\"}],\"name\":\"setConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"typeAndVersion\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}]",
	Bin: "0x60e06040523480156200001157600080fd5b5060405162005bcc38038062005bcc8339810160408190526200003491620001b1565b33806000816200008b5760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f000000000000000060448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b0384811691909117909155811615620000be57620000be81620000e8565b5050506001600160601b0319606093841b811660805290831b811660a052911b1660c052620001fb565b6001600160a01b038116331415620001435760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000604482015260640162000082565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b80516001600160a01b0381168114620001ac57600080fd5b919050565b600080600060608486031215620001c757600080fd5b620001d28462000194565b9250620001e26020850162000194565b9150620001f26040850162000194565b90509250925092565b60805160601c60a05160601c60c05160601c6159606200026c6000396000818161032f01526138bc01526000818161049b0152613d0a01526000818161027601528181610bf10152818161140c0152818161270801528181613228015281816133d6015261352c01526159606000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c80637ce1ffeb1161010f578063a4c0ed36116100a2578063caf70c4a11610071578063caf70c4a14610603578063d7ae1d3014610616578063e72f6e3014610629578063f2fde38b1461063c57600080fd5b8063a4c0ed3614610483578063ad17836114610496578063af198b97146104bd578063c3f909d4146104d057600080fd5b80638da5cb5b116100de5780638da5cb5b1461040f5780639f87fad71461042d578063a21a23e414610440578063a47c76961461046157600080fd5b80637ce1ffeb1461039f57806382359740146103a8578063862545d1146103bb57806386fe91c7146103ce57600080fd5b80635d3b1d301161018757806369bcdb7d1161015657806369bcdb7d146103515780636f64f03f146103715780637341c10c1461038457806379ba50971461039757600080fd5b80635d3b1d30146102ee57806364d51a2a1461030f57806366316d8d14610317578063689c45171461032a57600080fd5b8063181f5a77116101c3578063181f5a77146102325780631b6b6d231461027157806340d6bb82146102bd57806344380d1f146102db57600080fd5b806304c357cb146101ea57806308821d58146101ff57806315c48b8414610212575b600080fd5b6101fd6101f83660046153c6565b61064f565b005b6101fd61020d36600461517a565b61086c565b61021a60c881565b60405161ffff90911681526020015b60405180910390f35b604080518082018252601681527f565246436f6f7264696e61746f72563220312e302e30000000000000000000006020820152905161022991906155ac565b6102987f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610229565b6102c66101f481565b60405163ffffffff9091168152602001610229565b6101fd6102e93660046153f0565b610990565b6103016102fc3660046151ed565b610d6f565b604051908152602001610229565b61021a606481565b6101fd610325366004615150565b61129f565b6102987f000000000000000000000000000000000000000000000000000000000000000081565b61030161035f366004615392565b60009081526007602052604090205490565b6101fd61037f366004615095565b611520565b6101fd6103923660046153c6565b611639565b6101fd611915565b61030161138881565b6101fd6103b63660046153ab565b611a12565b6101fd6103c9366004615313565b611c4f565b6004546103f2906801000000000000000090046bffffffffffffffffffffffff1681565b6040516bffffffffffffffffffffffff9091168152602001610229565b60005473ffffffffffffffffffffffffffffffffffffffff16610298565b6101fd61043b3660046153c6565b611ece565b61044861236b565b60405167ffffffffffffffff9091168152602001610229565b61047461046f3660046153ab565b612549565b6040516102299392919061564c565b6101fd6104913660046150c9565b612691565b6102987f000000000000000000000000000000000000000000000000000000000000000081565b6101fd6104cb36600461524b565b6129cb565b6105ad6040805160e08101825260095461ffff811680835262010000820463ffffffff908116602085018190526601000000000000840482169585018690526a010000000000000000000084048216606086018190526e010000000000000000000000000000850490921660808601819052720100000000000000000000000000000000000085046bffffffffffffffffffffffff1660a087018190527e0100000000000000000000000000000000000000000000000000000000000090950460ff16151560c09096019590955260085492969095949193919290565b6040805161ffff909816885263ffffffff96871660208901529486169487019490945291841660608601529290921660808401526bffffffffffffffffffffffff90911660a083015260c082015260e001610229565b610301610611366004615196565b612e7c565b6101fd6106243660046153c6565b612eac565b6101fd61063736600461507a565b61339d565b6101fd61064a36600461507a565b613601565b67ffffffffffffffff821660009081526003602052604090205482906c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff16806106c8576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614610734576040517fd8a3fb5200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024015b60405180910390fd5b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff1615610793576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff841660009081526003602052604090206001015473ffffffffffffffffffffffffffffffffffffffff8481169116146108665767ffffffffffffffff841660008181526003602090815260409182902060010180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff88169081179091558251338152918201527f69436ea6df009049404f564eff6622cd00522b0bd6a89efd9e52a355c4a879be91015b60405180910390a25b50505050565b610874613615565b6040805180820182526000916108a3919084906002908390839080828437600092019190915250612e7c915050565b60008181526005602052604090205490915073ffffffffffffffffffffffffffffffffffffffff1680610905576040517f77f5b84c0000000000000000000000000000000000000000000000000000000081526004810183905260240161072b565b6000828152600560205260409081902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001690555173ffffffffffffffffffffffffffffffffffffffff8216907f72be339577868f868798bac2c93e52d6f034fef4689a9848996c14ebb7416c0d906109839085815260200190565b60405180910390a2505050565b67ffffffffffffffff831660009081526003602052604090205483906c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff1680610a09576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614610a70576040517fd8a3fb5200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260240161072b565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff1615610acf576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff85166000908152600360205260409020546bffffffffffffffffffffffff80851691161015610b33576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8516600090815260036020526040812080546bffffffffffffffffffffffff1691859190610b6a83856157c6565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555083600460088282829054906101000a90046bffffffffffffffffffffffff16610bc191906157c6565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86866040518363ffffffff1660e01b8152600401610c7992919073ffffffffffffffffffffffffffffffffffffffff9290921682526bffffffffffffffffffffffff16602082015260400190565b602060405180830381600087803b158015610c9357600080fd5b505af1158015610ca7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ccb91906151b2565b610d01576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff86166000818152600360209081526040918290205482518581526bffffffffffffffffffffffff909116918101919091527ffd47f8dea665a4ba9fd5ac2d5d60d09da40628a32c3e5b3ee970f0a36b43dd3291015b60405180910390a2505050505050565b6009546000907e01000000000000000000000000000000000000000000000000000000000000900460ff1615610dd1576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff85166000908152600360205260409020546c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff16610e47576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b33600090815260026020908152604080832067ffffffffffffffff808a16855290835292819020815180830190925254808416808352680100000000000000009091049093169181019190915290610edd576040517ff0019fe600000000000000000000000000000000000000000000000000000000815267ffffffffffffffff8716600482015233602482015260440161072b565b60095461ffff9081169086161080610ef9575060c861ffff8616115b15610f49576009546040517fa738697600000000000000000000000000000000000000000000000000000000815261ffff8088166004830152909116602482015260c8604482015260640161072b565b60095467ffffffffffffffff87166000908152600360205260409020546bffffffffffffffffffffffff7201000000000000000000000000000000000000909204821691161015610fc6576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60095463ffffffff660100000000000090910481169085161115611035576009546040517ff5d7e01e00000000000000000000000000000000000000000000000000000000815263ffffffff80871660048301526601000000000000909204909116602482015260440161072b565b6101f463ffffffff84161115611087576040517f47386bec00000000000000000000000000000000000000000000000000000000815263ffffffff841660048201526101f4602482015260440161072b565b60008160200151600161109a919061570b565b60408051602081018b9052339181019190915267ffffffffffffffff808a1660608301528216608082015290915060009060a001604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001815282825280516020918201209083018c90529082018190529150600090606001604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00181528282528051602091820120908301819052439183019190915267ffffffffffffffff8b16606083015263ffffffff808a166080840152881660a08301523360c0830152915060e001604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152828252805160209182012060008581526007835283902055838352820184905267ffffffffffffffff8b169082015261ffff8916606082015263ffffffff8089166080830152871660a082015233908b907f63373d1c4696214b898952999c9aaec57dac1ee2723cec59bea6888f489a97729060c00160405180910390a333600090815260026020908152604080832067ffffffffffffffff808e168552925290912080549190941668010000000000000000027fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff909116179092555091505095945050505050565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff16156112fe576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b336000908152600660205260409020546bffffffffffffffffffffffff80831691161015611358576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b33600090815260066020526040812080548392906113859084906bffffffffffffffffffffffff166157c6565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555080600460088282829054906101000a90046bffffffffffffffffffffffff166113dc91906157c6565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b815260040161149492919073ffffffffffffffffffffffffffffffffffffffff9290921682526bffffffffffffffffffffffff16602082015260400190565b602060405180830381600087803b1580156114ae57600080fd5b505af11580156114c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e691906151b2565b61151c576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b611528613615565b604080518082018252600091611557919084906002908390839080828437600092019190915250612e7c915050565b60008181526005602052604090205490915073ffffffffffffffffffffffffffffffffffffffff16156115b9576040517f4a0b8fa70000000000000000000000000000000000000000000000000000000081526004810182905260240161072b565b60008181526005602090815260409182902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff871690811790915591518381527fe729ae16526293f74ade739043022254f1489f616295a25bf72dfb4511ed73b89101610983565b67ffffffffffffffff821660009081526003602052604090205482906c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff16806116b2576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614611719576040517fd8a3fb5200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260240161072b565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff1615611778576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8416600090815260036020526040902060020154606414156117cf576040517f05a48e0f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260026020908152604080832067ffffffffffffffff8089168552925290912054161561181657610866565b60408051808201825267ffffffffffffffff8681168083526000602080850182815273ffffffffffffffffffffffffffffffffffffffff8a1680845260028084528885208686528452888520975188549351881668010000000000000000027fffffffffffffffffffffffffffffffff0000000000000000000000000000000090941697169690961791909117909555600381528582209093018054600181018255908252908390200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000168417905592519182527f43dc749a04ac8fb825cbd514f7c0e13f13bc6f2ee66043b76629d51776cff8e0910161085d565b60015473ffffffffffffffffffffffffffffffffffffffff163314611996576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e657200000000000000000000604482015260640161072b565b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff1615611a71576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff81166000908152600360205260409020546c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff16611ae7576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff811660009081526003602052604090206001015473ffffffffffffffffffffffffffffffffffffffff163314611b895767ffffffffffffffff8116600090815260036020526040908190206001015490517fd084e97500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240161072b565b67ffffffffffffffff811660008181526003602090815260409182902080546bffffffffffffffffffffffff81166c0100000000000000000000000033818102929092178455600190930180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905584519290910473ffffffffffffffffffffffffffffffffffffffff16808352928201529092917f6f1dc65165ffffedfd8e507b4a0f1fcfdada045ed11f6c26ba27cedfe87802f0910160405180910390a25050565b611c57613615565b60c861ffff88161115611caa576040517fa738697600000000000000000000000000000000000000000000000000000000815261ffff881660048201819052602482015260c8604482015260640161072b565b60008113611ce7576040517f43d4cf660000000000000000000000000000000000000000000000000000000081526004810182905260240161072b565b6040805160e0808201835261ffff8a1680835263ffffffff8a811660208086018290528b83168688018190528b84166060808901829052948c166080808a018290526bffffffffffffffffffffffff8d1660a0808c01829052600060c09c8d0152600980547fffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000168b17620100008a02177fffffffffffffffffffffffffffffffffffff0000000000000000ffffffffffff16660100000000000088027fffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffff16176a01000000000000000000008702177fffff00000000000000000000000000000000ffffffffffffffffffffffffffff166e01000000000000000000000000000086027fffff000000000000000000000000ffffffffffffffffffffffffffffffffffff161772010000000000000000000000000000000000008402177fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905560088e90558c51998a5295890196909652998701929092529385019390935295830191909152938101939093529082018390527f56583fc0e609f432152501e64e8a4aaf7ecc715b33697f1cacb307f4b562d2c4910160405180910390a150505050505050565b67ffffffffffffffff821660009081526003602052604090205482906c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff1680611f47576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614611fae576040517fd8a3fb5200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260240161072b565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff161561200d576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260026020908152604080832067ffffffffffffffff8089168552925290912054166120a8576040517ff0019fe600000000000000000000000000000000000000000000000000000000815267ffffffffffffffff8516600482015273ffffffffffffffffffffffffffffffffffffffff8416602482015260440161072b565b67ffffffffffffffff841660009081526003602090815260408083206002018054825181850281018501909352808352919290919083018282801561212357602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116120f8575b5050505050905060006001825161213a91906157af565b905060005b82518110156122d9578573ffffffffffffffffffffffffffffffffffffffff16838281518110612171576121716158f5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614156122c75760008383815181106121a9576121a96158f5565b6020026020010151905080600360008a67ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060020183815481106121ef576121ef6158f5565b600091825260208083209190910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff949094169390931790925567ffffffffffffffff8a168152600390915260409020600201805480612269576122696158c6565b60008281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055019055506122d9565b806122d1816157f3565b91505061213f565b5073ffffffffffffffffffffffffffffffffffffffff8516600081815260026020908152604080832067ffffffffffffffff8b168085529083529281902080547fffffffffffffffffffffffffffffffff000000000000000000000000000000001690555192835290917f182bff9831466789164ca77075fffd84916d35a8180ba73c27e45634549b445b9101610d5f565b6009546000907e01000000000000000000000000000000000000000000000000000000000000900460ff16156123cd576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6004805467ffffffffffffffff169060006123e78361582c565b82546101009290920a67ffffffffffffffff81810219909316918316021790915560045416905060008060405190808252806020026020018201604052801561243a578160200160208202803683370190505b506040805160808101825260008082523360208084019182528385018381526060850187815267ffffffffffffffff8a1685526003835295909320845192516bffffffffffffffffffffffff9093166c0100000000000000000000000073ffffffffffffffffffffffffffffffffffffffff9485160217815592516001840180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909316179091559251805194955091939092612501926002850192910190614db1565b505060405133815267ffffffffffffffff841691507f464722b4166576d3dcbba877b999bc35cf911f4eaf434b7eba68fa113951d0bf9060200160405180910390a250905090565b67ffffffffffffffff811660009081526003602052604081205481906060906c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff166125c4576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff84166000908152600360209081526040918290208054600290910180548451818502810185019095528085526bffffffffffffffffffffffff8316946c0100000000000000000000000090930473ffffffffffffffffffffffffffffffffffffffff169391929183919083018282801561267d57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311612652575b505050505090509250925092509193909250565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff16156126f0576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461275f576040517f44b0e3c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60208114612799576040517f8129bbcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006127a7828401846153ab565b67ffffffffffffffff81166000908152600360205260409020549091506c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff16612820576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff811660009081526003602052604090205473ffffffffffffffffffffffffffffffffffffffff6c01000000000000000000000000909104811690861681146128b5576040517fd8a3fb5200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260240161072b565b67ffffffffffffffff8216600090815260036020526040812080546bffffffffffffffffffffffff16918791906128ec8385615737565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555085600460088282829054906101000a90046bffffffffffffffffffffffff166129439190615737565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508267ffffffffffffffff167fd39ec07f4e209f627a4c427971473820dc129761ba28de8906bd56f57101d4f88288846129aa91906156f3565b6040805192835260208301919091520160405180910390a250505050505050565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff1615612a2a576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005a90506000806000612a3e8686613698565b9250925092506000856060015163ffffffff1667ffffffffffffffff811115612a6957612a69615924565b604051908082528060200260200182016040528015612a92578160200160208202803683370190505b50905060005b866060015163ffffffff16811015612b065760408051602081018590529081018290526060016040516020818303038152906040528051906020012060001c828281518110612ae957612ae96158f5565b602090810291909101015280612afe816157f3565b915050612a98565b506000838152600760205260408082208290556080890151905182917f1fe543e30000000000000000000000000000000000000000000000000000000091612b5391908690602401615633565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152905060005a9050886040015163ffffffff16811015612c30576040808a015190517fd17e76640000000000000000000000000000000000000000000000000000000081526004810183905263ffffffff909116602482015260440161072b565b600980547fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e01000000000000000000000000000000000000000000000000000000000000179055604089015160808a0151600091612c999163ffffffff90911690856139e7565b9050867f969e72fbacf24da85b4bce2a3cef3d8dc2497b1750c4cc5a06b52c10413383378683604051612ccd929190615588565b60405180910390a2600980547fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1690819055600090612d2f908b9063ffffffff6e0100000000000000000000000000008204811691620100009004163a613a35565b6020808d015167ffffffffffffffff166000908152600390915260409020549091506bffffffffffffffffffffffff80831691161015612d9b576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020808c015167ffffffffffffffff1660009081526003909152604081208054839290612dd79084906bffffffffffffffffffffffff166157c6565b82546101009290920a6bffffffffffffffffffffffff81810219909316918316021790915560008b81526005602090815260408083205473ffffffffffffffffffffffffffffffffffffffff1683526006909152812080548594509092612e4091859116615737565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550505050505050505050505050565b600081604051602001612e8f919061557a565b604051602081830303815290604052805190602001209050919050565b67ffffffffffffffff821660009081526003602052604090205482906c01000000000000000000000000900473ffffffffffffffffffffffffffffffffffffffff1680612f25576040517f1f6a65b600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614612f8c576040517fd8a3fb5200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260240161072b565b6009547e01000000000000000000000000000000000000000000000000000000000000900460ff1615612feb576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff84166000908152600360209081526040808320815160808101835281546bffffffffffffffffffffffff8116825273ffffffffffffffffffffffffffffffffffffffff6c01000000000000000000000000909104811682860152600183015416818401526002820180548451818702810187019095528085529194929360608601939092908301828280156130bf57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311613094575b5050509190925250508151919250600090505b8260600151518110156131785760026000846060015183815181106130f9576130f96158f5565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff168252818101929092526040908101600090812067ffffffffffffffff8b168252909252902080547fffffffffffffffffffffffffffffffff0000000000000000000000000000000016905580613170816157f3565b9150506130d2565b5067ffffffffffffffff861660009081526003602052604081208181556001810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055906131cd6002830182614e3b565b505080600460088282829054906101000a90046bffffffffffffffffffffffff166131f891906157c6565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836bffffffffffffffffffffffff166040518363ffffffff1660e01b81526004016132b092919073ffffffffffffffffffffffffffffffffffffffff929092168252602082015260400190565b602060405180830381600087803b1580156132ca57600080fd5b505af11580156132de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061330291906151b2565b613338576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805173ffffffffffffffffffffffffffffffffffffffff871681526bffffffffffffffffffffffff8316602082015267ffffffffffffffff8816917fe8ed5b475a5b5987aa9165e8731bb78043f39eee32ec5a1169a89e27fcd498159101610d5f565b6133a5613615565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201526000907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906370a082319060240160206040518083038186803b15801561342d57600080fd5b505afa158015613441573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061346591906151d4565b6004549091506801000000000000000090046bffffffffffffffffffffffff16818111156134c9576040517fa99da302000000000000000000000000000000000000000000000000000000008152600481018290526024810183905260440161072b565b818110156135fc5760006134dd82846157af565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152602482018390529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb90604401602060405180830381600087803b15801561357257600080fd5b505af1158015613586573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135aa91906151b2565b506040805173ffffffffffffffffffffffffffffffffffffffff86168152602081018390527f59bfc682b673f8cbf945f1e454df9334834abf7dfe7f92237ca29ecb9b436600910160405180910390a1505b505050565b613609613615565b61361281613b3d565b50565b60005473ffffffffffffffffffffffffffffffffffffffff163314613696576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015260640161072b565b565b60008060006136aa8560000151612e7c565b60008181526005602052604090205490935073ffffffffffffffffffffffffffffffffffffffff168061370c576040517f77f5b84c0000000000000000000000000000000000000000000000000000000081526004810185905260240161072b565b608086015160405161372b918691602001918252602082015260400190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152815160209283012060008181526007909352912054909350806137a8576040517f3688124a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b85516020808801516040808a015160608b015160808c01519251613821968b96909594910195865267ffffffffffffffff948516602087015292909316604085015263ffffffff908116606085015291909116608083015273ffffffffffffffffffffffffffffffffffffffff1660a082015260c00190565b60405160208183030381529060405280519060200120811461386f576040517fd529142c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b855167ffffffffffffffff1640806139935786516040517fe9413d3800000000000000000000000000000000000000000000000000000000815267ffffffffffffffff90911660048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e9413d389060240160206040518083038186803b15801561391357600080fd5b505afa158015613927573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061394b91906151d4565b9050806139935786516040517f175dadad00000000000000000000000000000000000000000000000000000000815267ffffffffffffffff909116600482015260240161072b565b60008860800151826040516020016139b5929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c90506139da8982613c33565b9450505050509250925092565b60005a6113888110156139f957600080fd5b611388810390508460408204820311613a1157600080fd5b50823b613a1d57600080fd5b60008083516020850160008789f190505b9392505050565b600080613a40613cbc565b905060008113613a7f576040517f43d4cf660000000000000000000000000000000000000000000000000000000081526004810182905260240161072b565b6000815a613a8d89896156f3565b613a9791906157af565b613aa986670de0b6b3a7640000615772565b613ab39190615772565b613abd919061575e565b90506000613ad663ffffffff871664e8d4a51000615772565b9050613aee816b033b2e3c9fd0803ce80000006157af565b821115613b27576040517fe80fa38100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613b3181836156f3565b98975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116331415613bbd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000604482015260640161072b565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b6000613c678360000151846020015185604001518660600151868860a001518960c001518a60e001518b6101000151613dd3565b60038360200151604051602001613c7f92919061561f565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209392505050565b600954604080517ffeaf968c00000000000000000000000000000000000000000000000000000000815290516000926a0100000000000000000000900463ffffffff169182151591849182917f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169163feaf968c9160048083019260a0929190829003018186803b158015613d6557600080fd5b505afa158015613d79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d9d9190615433565b509450909250849150508015613dc15750613db882426157af565b8463ffffffff16105b15613dcb57506008545b949350505050565b613ddc896140aa565b613e42576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f7075626c6963206b6579206973206e6f74206f6e206375727665000000000000604482015260640161072b565b613e4b886140aa565b613eb1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f67616d6d61206973206e6f74206f6e2063757276650000000000000000000000604482015260640161072b565b613eba836140aa565b613f20576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f6347616d6d615769746e657373206973206e6f74206f6e206375727665000000604482015260640161072b565b613f29826140aa565b613f8f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f73486173685769746e657373206973206e6f74206f6e20637572766500000000604482015260640161072b565b613f9b878a8887614205565b614001576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f6164647228632a706b2b732a6729213d5f755769746e65737300000000000000604482015260640161072b565b600061400d8a876143a8565b90506000614020898b878b868989614412565b90506000614031838d8d8a8661459a565b9050808a1461409c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c69642070726f6f6600000000000000000000000000000000000000604482015260640161072b565b505050505050505050505050565b80516000907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f11614137576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420782d6f7264696e6174650000000000000000000000000000604482015260640161072b565b60208201517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f116141c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696420792d6f7264696e6174650000000000000000000000000000604482015260640161072b565b60208201517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f9080096141fe8360005b60200201516145f8565b1492915050565b600073ffffffffffffffffffffffffffffffffffffffff8216614284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f626164207769746e657373000000000000000000000000000000000000000000604482015260640161072b565b60208401516000906001161561429b57601c61429e565b601b5b905060007ffffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd03641418587600060200201510986517ffffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141918203925060009190890987516040805160008082526020820180845287905260ff88169282019290925260608101929092526080820183905291925060019060a0016020604051602081039080840390855afa158015614355573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff9081169088161495505050505050949350505050565b6143b0614e59565b6143dd600184846040516020016143c993929190615559565b604051602081830303815290604052614650565b90505b6143e9816140aa565b61440c57805160408051602081019290925261440591016143c9565b90506143e0565b92915050565b61441a614e59565b825186517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f90819006910614156144ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f706f696e747320696e2073756d206d7573742062652064697374696e63740000604482015260640161072b565b6144b88789886146b9565b61451e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4669727374206d756c20636865636b206661696c656400000000000000000000604482015260640161072b565b6145298486856146b9565b61458f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5365636f6e64206d756c20636865636b206661696c6564000000000000000000604482015260640161072b565b613b31868484614846565b6000600286868685876040516020016145b8969594939291906154e7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209695505050505050565b6000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f80848509840990507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f600782089392505050565b614658614e59565b61466182614975565b81526146766146718260006141f4565b6149ca565b6020820181905260029006600114156146b4576020810180517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f0390525b919050565b600082614722576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f7a65726f207363616c6172000000000000000000000000000000000000000000604482015260640161072b565b8351602085015160009061473890600290615854565b1561474457601c614747565b601b5b905060007ffffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd03641418387096040805160008082526020820180845281905260ff86169282019290925260608101869052608081018390529192509060019060a0016020604051602081039080840390855afa1580156147c7573d6000803e3d6000fd5b5050506020604051035190506000866040516020016147e691906154d5565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012073ffffffffffffffffffffffffffffffffffffffff92831692169190911498975050505050505050565b61484e614e59565b83516020808601518551918601516000938493849361486f93909190614a04565b919450925090507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f858209600114614903576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f696e765a206d75737420626520696e7665727365206f66207a00000000000000604482015260640161072b565b60405180604001604052807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8061493c5761493c615897565b87860981526020017ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8785099052979650505050505050565b805160208201205b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f81106146b45760408051602080820193909352815180820384018152908201909152805191012061497d565b600061440c8260026149fd7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f60016156f3565b901c614b9a565b60008080600180827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f897ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f038808905060007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f038a0890506000614aac83838585614c8e565b9098509050614abd88828e88614ce6565b9098509050614ace88828c87614ce6565b90985090506000614ae18d878b85614ce6565b9098509050614af288828686614c8e565b9098509050614b0388828e89614ce6565b9098509050818114614b86577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f818a0998507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f82890997507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8183099650614b8a565b8196505b5050505050509450945094915050565b600080614ba5614e77565b6020808252818101819052604082015260608101859052608081018490527ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f60a0820152614bf1614e95565b60208160c08460057ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa925082614c84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f6269674d6f64457870206661696c757265210000000000000000000000000000604482015260640161072b565b5195945050505050565b6000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8487097ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8487099097909650945050505050565b600080807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f878509905060007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f87877ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f030990507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f8183087ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f86890990999098509650505050505050565b828054828255906000526020600020908101928215614e2b579160200282015b82811115614e2b57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190614dd1565b50614e37929150614eb3565b5090565b50805460008255906000526020600020908101906136129190614eb3565b60405180604001604052806002906020820280368337509192915050565b6040518060c001604052806006906020820280368337509192915050565b60405180602001604052806001906020820280368337509192915050565b5b80821115614e375760008155600101614eb4565b803573ffffffffffffffffffffffffffffffffffffffff811681146146b457600080fd5b806040810183101561440c57600080fd5b600082601f830112614f0e57600080fd5b6040516040810181811067ffffffffffffffff82111715614f3157614f31615924565b8060405250808385604086011115614f4857600080fd5b60005b6002811015614f6a578135835260209283019290910190600101614f4b565b509195945050505050565b600060a08284031215614f8757600080fd5b60405160a0810181811067ffffffffffffffff82111715614faa57614faa615924565b604052905080614fb98361502c565b8152614fc76020840161502c565b6020820152614fd860408401615018565b6040820152614fe960608401615018565b6060820152614ffa60808401614ec8565b60808201525092915050565b803561ffff811681146146b457600080fd5b803563ffffffff811681146146b457600080fd5b803567ffffffffffffffff811681146146b457600080fd5b805169ffffffffffffffffffff811681146146b457600080fd5b80356bffffffffffffffffffffffff811681146146b457600080fd5b60006020828403121561508c57600080fd5b613a2e82614ec8565b600080606083850312156150a857600080fd5b6150b183614ec8565b91506150c08460208501614eec565b90509250929050565b600080600080606085870312156150df57600080fd5b6150e885614ec8565b935060208501359250604085013567ffffffffffffffff8082111561510c57600080fd5b818701915087601f83011261512057600080fd5b81358181111561512f57600080fd5b88602082850101111561514157600080fd5b95989497505060200194505050565b6000806040838503121561516357600080fd5b61516c83614ec8565b91506150c06020840161505e565b60006040828403121561518c57600080fd5b613a2e8383614eec565b6000604082840312156151a857600080fd5b613a2e8383614efd565b6000602082840312156151c457600080fd5b81518015158114613a2e57600080fd5b6000602082840312156151e657600080fd5b5051919050565b600080600080600060a0868803121561520557600080fd5b853594506152156020870161502c565b935061522360408701615006565b925061523160608701615018565b915061523f60808701615018565b90509295509295909350565b60008082840361024081121561526057600080fd5b6101a08082121561527057600080fd5b6152786156c9565b91506152848686614efd565b82526152938660408701614efd565b60208301526080850135604083015260a0850135606083015260c085013560808301526152c260e08601614ec8565b60a08301526101006152d687828801614efd565b60c08401526152e9876101408801614efd565b60e0840152610180860135818401525081935061530886828701614f75565b925050509250929050565b600080600080600080600060e0888a03121561532e57600080fd5b61533788615006565b965061534560208901615018565b955061535360408901615018565b945061536160608901615018565b935061536f60808901615018565b925061537d60a0890161505e565b915060c0880135905092959891949750929550565b6000602082840312156153a457600080fd5b5035919050565b6000602082840312156153bd57600080fd5b613a2e8261502c565b600080604083850312156153d957600080fd5b6153e28361502c565b91506150c060208401614ec8565b60008060006060848603121561540557600080fd5b61540e8461502c565b925061541c60208501614ec8565b915061542a6040850161505e565b90509250925092565b600080600080600060a0868803121561544b57600080fd5b61545486615044565b945060208601519350604086015192506060860151915061523f60808701615044565b8060005b600281101561086657815184526020938401939091019060010161547b565b600081518084526020808501945080840160005b838110156154ca578151875295820195908201906001016154ae565b509495945050505050565b6154df8183615477565b604001919050565b8681526154f76020820187615477565b6155046060820186615477565b61551160a0820185615477565b61551e60e0820184615477565b60609190911b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166101208201526101340195945050505050565b8381526155696020820184615477565b606081019190915260800192915050565b6040810161440c8284615477565b60408152600061559b604083018561549a565b905082151560208301529392505050565b600060208083528351808285015260005b818110156155d9578581018301518582016040015282016155bd565b818111156155eb576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b82815260608101613a2e6020830184615477565b828152604060208201526000613dcb604083018461549a565b6000606082016bffffffffffffffffffffffff86168352602073ffffffffffffffffffffffffffffffffffffffff8087168286015260606040860152828651808552608087019150838801945060005b818110156156ba57855184168352948401949184019160010161569c565b50909998505050505050505050565b604051610120810167ffffffffffffffff811182821017156156ed576156ed615924565b60405290565b6000821982111561570657615706615868565b500190565b600067ffffffffffffffff80831681851680830382111561572e5761572e615868565b01949350505050565b60006bffffffffffffffffffffffff80831681851680830382111561572e5761572e615868565b60008261576d5761576d615897565b500490565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156157aa576157aa615868565b500290565b6000828210156157c1576157c1615868565b500390565b60006bffffffffffffffffffffffff838116908316818110156157eb576157eb615868565b039392505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561582557615825615868565b5060010190565b600067ffffffffffffffff8083168181141561584a5761584a615868565b6001019392505050565b60008261586357615863615897565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fdfea164736f6c6343000806000a",
}

Functions

This section is empty.

Types

type GetConfig

type GetConfig struct {
	MinimumRequestConfirmations uint16
	FulfillmentFlatFeeLinkPPM   uint32
	MaxGasLimit                 uint32
	StalenessSeconds            uint32
	GasAfterPaymentCalculation  uint32
	MinimumSubscriptionBalance  *big.Int
	FallbackWeiPerUnitLink      *big.Int
}

type GetSubscription

type GetSubscription struct {
	Balance   *big.Int
	Owner     common.Address
	Consumers []common.Address
}

type VRFCoordinatorV2

type VRFCoordinatorV2 struct {
	VRFCoordinatorV2Caller
	VRFCoordinatorV2Transactor
	VRFCoordinatorV2Filterer
	// contains filtered or unexported fields
}

func DeployVRFCoordinatorV2

func DeployVRFCoordinatorV2(auth *bind.TransactOpts, backend bind.ContractBackend, link common.Address, blockhashStore common.Address, linkEthFeed common.Address) (common.Address, *types.Transaction, *VRFCoordinatorV2, error)

func NewVRFCoordinatorV2

func NewVRFCoordinatorV2(address common.Address, backend bind.ContractBackend) (*VRFCoordinatorV2, error)

func (*VRFCoordinatorV2) Address

func (_VRFCoordinatorV2 *VRFCoordinatorV2) Address() common.Address

func (*VRFCoordinatorV2) ParseLog

func (_VRFCoordinatorV2 *VRFCoordinatorV2) ParseLog(log types.Log) (generated.AbigenLog, error)

type VRFCoordinatorV2Caller

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

func NewVRFCoordinatorV2Caller

func NewVRFCoordinatorV2Caller(address common.Address, caller bind.ContractCaller) (*VRFCoordinatorV2Caller, error)

func (*VRFCoordinatorV2Caller) BLOCKHASHSTORE

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) BLOCKHASHSTORE(opts *bind.CallOpts) (common.Address, error)

func (*VRFCoordinatorV2Caller) GetCommitment

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) GetCommitment(opts *bind.CallOpts, requestId *big.Int) ([32]byte, error)

func (*VRFCoordinatorV2Caller) GetConfig

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) GetConfig(opts *bind.CallOpts) (GetConfig,

	error)

func (*VRFCoordinatorV2Caller) GetSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) GetSubscription(opts *bind.CallOpts, subId uint64) (GetSubscription,

	error)

func (*VRFCoordinatorV2Caller) HashOfKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) HashOfKey(opts *bind.CallOpts, publicKey [2]*big.Int) ([32]byte, error)
func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) LINK(opts *bind.CallOpts) (common.Address, error)

func (*VRFCoordinatorV2Caller) LINKETHFEED

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) LINKETHFEED(opts *bind.CallOpts) (common.Address, error)

func (*VRFCoordinatorV2Caller) MAXCONSUMERS

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) MAXCONSUMERS(opts *bind.CallOpts) (uint16, error)

func (*VRFCoordinatorV2Caller) MAXNUMWORDS

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) MAXNUMWORDS(opts *bind.CallOpts) (uint32, error)

func (*VRFCoordinatorV2Caller) MAXREQUESTCONFIRMATIONS

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) MAXREQUESTCONFIRMATIONS(opts *bind.CallOpts) (uint16, error)

func (*VRFCoordinatorV2Caller) MINGASLIMIT

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) MINGASLIMIT(opts *bind.CallOpts) (*big.Int, error)

func (*VRFCoordinatorV2Caller) Owner

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) Owner(opts *bind.CallOpts) (common.Address, error)

func (*VRFCoordinatorV2Caller) STotalBalance

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) STotalBalance(opts *bind.CallOpts) (*big.Int, error)

func (*VRFCoordinatorV2Caller) TypeAndVersion

func (_VRFCoordinatorV2 *VRFCoordinatorV2Caller) TypeAndVersion(opts *bind.CallOpts) (string, error)

type VRFCoordinatorV2CallerRaw

type VRFCoordinatorV2CallerRaw struct {
	Contract *VRFCoordinatorV2Caller
}

func (*VRFCoordinatorV2CallerRaw) Call

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

type VRFCoordinatorV2CallerSession

type VRFCoordinatorV2CallerSession struct {
	Contract *VRFCoordinatorV2Caller
	CallOpts bind.CallOpts
}

func (*VRFCoordinatorV2CallerSession) BLOCKHASHSTORE

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) BLOCKHASHSTORE() (common.Address, error)

func (*VRFCoordinatorV2CallerSession) GetCommitment

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) GetCommitment(requestId *big.Int) ([32]byte, error)

func (*VRFCoordinatorV2CallerSession) GetConfig

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) GetConfig() (GetConfig,

	error)

func (*VRFCoordinatorV2CallerSession) GetSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) GetSubscription(subId uint64) (GetSubscription,

	error)

func (*VRFCoordinatorV2CallerSession) HashOfKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) HashOfKey(publicKey [2]*big.Int) ([32]byte, error)
func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) LINK() (common.Address, error)

func (*VRFCoordinatorV2CallerSession) LINKETHFEED

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) LINKETHFEED() (common.Address, error)

func (*VRFCoordinatorV2CallerSession) MAXCONSUMERS

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) MAXCONSUMERS() (uint16, error)

func (*VRFCoordinatorV2CallerSession) MAXNUMWORDS

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) MAXNUMWORDS() (uint32, error)

func (*VRFCoordinatorV2CallerSession) MAXREQUESTCONFIRMATIONS

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) MAXREQUESTCONFIRMATIONS() (uint16, error)

func (*VRFCoordinatorV2CallerSession) MINGASLIMIT

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) MINGASLIMIT() (*big.Int, error)

func (*VRFCoordinatorV2CallerSession) Owner

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) Owner() (common.Address, error)

func (*VRFCoordinatorV2CallerSession) STotalBalance

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) STotalBalance() (*big.Int, error)

func (*VRFCoordinatorV2CallerSession) TypeAndVersion

func (_VRFCoordinatorV2 *VRFCoordinatorV2CallerSession) TypeAndVersion() (string, error)

type VRFCoordinatorV2ConfigSet

type VRFCoordinatorV2ConfigSet struct {
	MinimumRequestConfirmations uint16
	FulfillmentFlatFeeLinkPPM   uint32
	MaxGasLimit                 uint32
	StalenessSeconds            uint32
	GasAfterPaymentCalculation  uint32
	MinimumSubscriptionBalance  *big.Int
	FallbackWeiPerUnitLink      *big.Int
	Raw                         types.Log
}

func (VRFCoordinatorV2ConfigSet) Topic

type VRFCoordinatorV2ConfigSetIterator

type VRFCoordinatorV2ConfigSetIterator struct {
	Event *VRFCoordinatorV2ConfigSet
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2ConfigSetIterator) Close

func (*VRFCoordinatorV2ConfigSetIterator) Error

func (*VRFCoordinatorV2ConfigSetIterator) Next

type VRFCoordinatorV2Filterer

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

func NewVRFCoordinatorV2Filterer

func NewVRFCoordinatorV2Filterer(address common.Address, filterer bind.ContractFilterer) (*VRFCoordinatorV2Filterer, error)

func (*VRFCoordinatorV2Filterer) FilterConfigSet

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterConfigSet(opts *bind.FilterOpts) (*VRFCoordinatorV2ConfigSetIterator, error)

func (*VRFCoordinatorV2Filterer) FilterFundsRecovered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterFundsRecovered(opts *bind.FilterOpts) (*VRFCoordinatorV2FundsRecoveredIterator, error)

func (*VRFCoordinatorV2Filterer) FilterOwnershipTransferRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterOwnershipTransferRequested(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*VRFCoordinatorV2OwnershipTransferRequestedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterOwnershipTransferred

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterOwnershipTransferred(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*VRFCoordinatorV2OwnershipTransferredIterator, error)

func (*VRFCoordinatorV2Filterer) FilterProvingKeyDeregistered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterProvingKeyDeregistered(opts *bind.FilterOpts, oracle []common.Address) (*VRFCoordinatorV2ProvingKeyDeregisteredIterator, error)

func (*VRFCoordinatorV2Filterer) FilterProvingKeyRegistered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterProvingKeyRegistered(opts *bind.FilterOpts, oracle []common.Address) (*VRFCoordinatorV2ProvingKeyRegisteredIterator, error)

func (*VRFCoordinatorV2Filterer) FilterRandomWordsFulfilled

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterRandomWordsFulfilled(opts *bind.FilterOpts, requestId []*big.Int) (*VRFCoordinatorV2RandomWordsFulfilledIterator, error)

func (*VRFCoordinatorV2Filterer) FilterRandomWordsRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterRandomWordsRequested(opts *bind.FilterOpts, keyHash [][32]byte, sender []common.Address) (*VRFCoordinatorV2RandomWordsRequestedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionCanceled

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionCanceled(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionCanceledIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionConsumerAdded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionConsumerAdded(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionConsumerAddedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionConsumerRemoved

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionConsumerRemoved(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionConsumerRemovedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionCreated

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionCreated(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionCreatedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionDefunded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionDefunded(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionDefundedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionFunded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionFunded(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionFundedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionOwnerTransferRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionOwnerTransferRequested(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator, error)

func (*VRFCoordinatorV2Filterer) FilterSubscriptionOwnerTransferred

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) FilterSubscriptionOwnerTransferred(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionOwnerTransferredIterator, error)

func (*VRFCoordinatorV2Filterer) ParseConfigSet

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseConfigSet(log types.Log) (*VRFCoordinatorV2ConfigSet, error)

func (*VRFCoordinatorV2Filterer) ParseFundsRecovered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseFundsRecovered(log types.Log) (*VRFCoordinatorV2FundsRecovered, error)

func (*VRFCoordinatorV2Filterer) ParseOwnershipTransferRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseOwnershipTransferRequested(log types.Log) (*VRFCoordinatorV2OwnershipTransferRequested, error)

func (*VRFCoordinatorV2Filterer) ParseOwnershipTransferred

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseOwnershipTransferred(log types.Log) (*VRFCoordinatorV2OwnershipTransferred, error)

func (*VRFCoordinatorV2Filterer) ParseProvingKeyDeregistered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseProvingKeyDeregistered(log types.Log) (*VRFCoordinatorV2ProvingKeyDeregistered, error)

func (*VRFCoordinatorV2Filterer) ParseProvingKeyRegistered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseProvingKeyRegistered(log types.Log) (*VRFCoordinatorV2ProvingKeyRegistered, error)

func (*VRFCoordinatorV2Filterer) ParseRandomWordsFulfilled

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseRandomWordsFulfilled(log types.Log) (*VRFCoordinatorV2RandomWordsFulfilled, error)

func (*VRFCoordinatorV2Filterer) ParseRandomWordsRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseRandomWordsRequested(log types.Log) (*VRFCoordinatorV2RandomWordsRequested, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionCanceled

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionCanceled(log types.Log) (*VRFCoordinatorV2SubscriptionCanceled, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionConsumerAdded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionConsumerAdded(log types.Log) (*VRFCoordinatorV2SubscriptionConsumerAdded, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionConsumerRemoved

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionConsumerRemoved(log types.Log) (*VRFCoordinatorV2SubscriptionConsumerRemoved, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionCreated

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionCreated(log types.Log) (*VRFCoordinatorV2SubscriptionCreated, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionDefunded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionDefunded(log types.Log) (*VRFCoordinatorV2SubscriptionDefunded, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionFunded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionFunded(log types.Log) (*VRFCoordinatorV2SubscriptionFunded, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionOwnerTransferRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionOwnerTransferRequested(log types.Log) (*VRFCoordinatorV2SubscriptionOwnerTransferRequested, error)

func (*VRFCoordinatorV2Filterer) ParseSubscriptionOwnerTransferred

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) ParseSubscriptionOwnerTransferred(log types.Log) (*VRFCoordinatorV2SubscriptionOwnerTransferred, error)

func (*VRFCoordinatorV2Filterer) WatchConfigSet

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchConfigSet(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2ConfigSet) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchFundsRecovered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchFundsRecovered(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2FundsRecovered) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchOwnershipTransferRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchOwnershipTransferRequested(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2OwnershipTransferRequested, from []common.Address, to []common.Address) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchOwnershipTransferred

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2OwnershipTransferred, from []common.Address, to []common.Address) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchProvingKeyDeregistered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchProvingKeyDeregistered(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2ProvingKeyDeregistered, oracle []common.Address) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchProvingKeyRegistered

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchProvingKeyRegistered(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2ProvingKeyRegistered, oracle []common.Address) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchRandomWordsFulfilled

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchRandomWordsFulfilled(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2RandomWordsFulfilled, requestId []*big.Int) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchRandomWordsRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchRandomWordsRequested(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2RandomWordsRequested, keyHash [][32]byte, sender []common.Address) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionCanceled

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionCanceled(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionCanceled, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionConsumerAdded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionConsumerAdded(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionConsumerAdded, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionConsumerRemoved

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionConsumerRemoved(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionConsumerRemoved, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionCreated

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionCreated(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionCreated, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionDefunded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionDefunded(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionDefunded, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionFunded

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionFunded(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionFunded, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionOwnerTransferRequested

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionOwnerTransferRequested(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionOwnerTransferRequested, subId []uint64) (event.Subscription, error)

func (*VRFCoordinatorV2Filterer) WatchSubscriptionOwnerTransferred

func (_VRFCoordinatorV2 *VRFCoordinatorV2Filterer) WatchSubscriptionOwnerTransferred(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionOwnerTransferred, subId []uint64) (event.Subscription, error)

type VRFCoordinatorV2FundsRecovered

type VRFCoordinatorV2FundsRecovered struct {
	To     common.Address
	Amount *big.Int
	Raw    types.Log
}

func (VRFCoordinatorV2FundsRecovered) Topic

type VRFCoordinatorV2FundsRecoveredIterator

type VRFCoordinatorV2FundsRecoveredIterator struct {
	Event *VRFCoordinatorV2FundsRecovered
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2FundsRecoveredIterator) Close

func (*VRFCoordinatorV2FundsRecoveredIterator) Error

func (*VRFCoordinatorV2FundsRecoveredIterator) Next

type VRFCoordinatorV2Interface

type VRFCoordinatorV2Interface interface {
	BLOCKHASHSTORE(opts *bind.CallOpts) (common.Address, error)

	LINK(opts *bind.CallOpts) (common.Address, error)

	LINKETHFEED(opts *bind.CallOpts) (common.Address, error)

	MAXCONSUMERS(opts *bind.CallOpts) (uint16, error)

	MAXNUMWORDS(opts *bind.CallOpts) (uint32, error)

	MAXREQUESTCONFIRMATIONS(opts *bind.CallOpts) (uint16, error)

	MINGASLIMIT(opts *bind.CallOpts) (*big.Int, error)

	GetCommitment(opts *bind.CallOpts, requestId *big.Int) ([32]byte, error)

	GetConfig(opts *bind.CallOpts) (GetConfig,

		error)

	GetSubscription(opts *bind.CallOpts, subId uint64) (GetSubscription,

		error)

	HashOfKey(opts *bind.CallOpts, publicKey [2]*big.Int) ([32]byte, error)

	Owner(opts *bind.CallOpts) (common.Address, error)

	STotalBalance(opts *bind.CallOpts) (*big.Int, error)

	TypeAndVersion(opts *bind.CallOpts) (string, error)

	AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error)

	AcceptSubscriptionOwnerTransfer(opts *bind.TransactOpts, subId uint64) (*types.Transaction, error)

	AddConsumer(opts *bind.TransactOpts, subId uint64, consumer common.Address) (*types.Transaction, error)

	CancelSubscription(opts *bind.TransactOpts, subId uint64, to common.Address) (*types.Transaction, error)

	CreateSubscription(opts *bind.TransactOpts) (*types.Transaction, error)

	DefundSubscription(opts *bind.TransactOpts, subId uint64, to common.Address, amount *big.Int) (*types.Transaction, error)

	DeregisterProvingKey(opts *bind.TransactOpts, publicProvingKey [2]*big.Int) (*types.Transaction, error)

	FulfillRandomWords(opts *bind.TransactOpts, proof VRFProof, rc VRFCoordinatorV2RequestCommitment) (*types.Transaction, error)

	OnTokenTransfer(opts *bind.TransactOpts, sender common.Address, amount *big.Int, data []byte) (*types.Transaction, error)

	OracleWithdraw(opts *bind.TransactOpts, recipient common.Address, amount *big.Int) (*types.Transaction, error)

	RecoverFunds(opts *bind.TransactOpts, to common.Address) (*types.Transaction, error)

	RegisterProvingKey(opts *bind.TransactOpts, oracle common.Address, publicProvingKey [2]*big.Int) (*types.Transaction, error)

	RemoveConsumer(opts *bind.TransactOpts, subId uint64, consumer common.Address) (*types.Transaction, error)

	RequestRandomWords(opts *bind.TransactOpts, keyHash [32]byte, subId uint64, requestConfirmations uint16, callbackGasLimit uint32, numWords uint32) (*types.Transaction, error)

	RequestSubscriptionOwnerTransfer(opts *bind.TransactOpts, subId uint64, newOwner common.Address) (*types.Transaction, error)

	SetConfig(opts *bind.TransactOpts, minimumRequestConfirmations uint16, fulfillmentFlatFeeLinkPPM uint32, maxGasLimit uint32, stalenessSeconds uint32, gasAfterPaymentCalculation uint32, minimumSubscriptionBalance *big.Int, fallbackWeiPerUnitLink *big.Int) (*types.Transaction, error)

	TransferOwnership(opts *bind.TransactOpts, to common.Address) (*types.Transaction, error)

	FilterConfigSet(opts *bind.FilterOpts) (*VRFCoordinatorV2ConfigSetIterator, error)

	WatchConfigSet(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2ConfigSet) (event.Subscription, error)

	ParseConfigSet(log types.Log) (*VRFCoordinatorV2ConfigSet, error)

	FilterFundsRecovered(opts *bind.FilterOpts) (*VRFCoordinatorV2FundsRecoveredIterator, error)

	WatchFundsRecovered(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2FundsRecovered) (event.Subscription, error)

	ParseFundsRecovered(log types.Log) (*VRFCoordinatorV2FundsRecovered, error)

	FilterOwnershipTransferRequested(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*VRFCoordinatorV2OwnershipTransferRequestedIterator, error)

	WatchOwnershipTransferRequested(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2OwnershipTransferRequested, from []common.Address, to []common.Address) (event.Subscription, error)

	ParseOwnershipTransferRequested(log types.Log) (*VRFCoordinatorV2OwnershipTransferRequested, error)

	FilterOwnershipTransferred(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*VRFCoordinatorV2OwnershipTransferredIterator, error)

	WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2OwnershipTransferred, from []common.Address, to []common.Address) (event.Subscription, error)

	ParseOwnershipTransferred(log types.Log) (*VRFCoordinatorV2OwnershipTransferred, error)

	FilterProvingKeyDeregistered(opts *bind.FilterOpts, oracle []common.Address) (*VRFCoordinatorV2ProvingKeyDeregisteredIterator, error)

	WatchProvingKeyDeregistered(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2ProvingKeyDeregistered, oracle []common.Address) (event.Subscription, error)

	ParseProvingKeyDeregistered(log types.Log) (*VRFCoordinatorV2ProvingKeyDeregistered, error)

	FilterProvingKeyRegistered(opts *bind.FilterOpts, oracle []common.Address) (*VRFCoordinatorV2ProvingKeyRegisteredIterator, error)

	WatchProvingKeyRegistered(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2ProvingKeyRegistered, oracle []common.Address) (event.Subscription, error)

	ParseProvingKeyRegistered(log types.Log) (*VRFCoordinatorV2ProvingKeyRegistered, error)

	FilterRandomWordsFulfilled(opts *bind.FilterOpts, requestId []*big.Int) (*VRFCoordinatorV2RandomWordsFulfilledIterator, error)

	WatchRandomWordsFulfilled(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2RandomWordsFulfilled, requestId []*big.Int) (event.Subscription, error)

	ParseRandomWordsFulfilled(log types.Log) (*VRFCoordinatorV2RandomWordsFulfilled, error)

	FilterRandomWordsRequested(opts *bind.FilterOpts, keyHash [][32]byte, sender []common.Address) (*VRFCoordinatorV2RandomWordsRequestedIterator, error)

	WatchRandomWordsRequested(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2RandomWordsRequested, keyHash [][32]byte, sender []common.Address) (event.Subscription, error)

	ParseRandomWordsRequested(log types.Log) (*VRFCoordinatorV2RandomWordsRequested, error)

	FilterSubscriptionCanceled(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionCanceledIterator, error)

	WatchSubscriptionCanceled(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionCanceled, subId []uint64) (event.Subscription, error)

	ParseSubscriptionCanceled(log types.Log) (*VRFCoordinatorV2SubscriptionCanceled, error)

	FilterSubscriptionConsumerAdded(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionConsumerAddedIterator, error)

	WatchSubscriptionConsumerAdded(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionConsumerAdded, subId []uint64) (event.Subscription, error)

	ParseSubscriptionConsumerAdded(log types.Log) (*VRFCoordinatorV2SubscriptionConsumerAdded, error)

	FilterSubscriptionConsumerRemoved(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionConsumerRemovedIterator, error)

	WatchSubscriptionConsumerRemoved(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionConsumerRemoved, subId []uint64) (event.Subscription, error)

	ParseSubscriptionConsumerRemoved(log types.Log) (*VRFCoordinatorV2SubscriptionConsumerRemoved, error)

	FilterSubscriptionCreated(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionCreatedIterator, error)

	WatchSubscriptionCreated(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionCreated, subId []uint64) (event.Subscription, error)

	ParseSubscriptionCreated(log types.Log) (*VRFCoordinatorV2SubscriptionCreated, error)

	FilterSubscriptionDefunded(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionDefundedIterator, error)

	WatchSubscriptionDefunded(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionDefunded, subId []uint64) (event.Subscription, error)

	ParseSubscriptionDefunded(log types.Log) (*VRFCoordinatorV2SubscriptionDefunded, error)

	FilterSubscriptionFunded(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionFundedIterator, error)

	WatchSubscriptionFunded(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionFunded, subId []uint64) (event.Subscription, error)

	ParseSubscriptionFunded(log types.Log) (*VRFCoordinatorV2SubscriptionFunded, error)

	FilterSubscriptionOwnerTransferRequested(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator, error)

	WatchSubscriptionOwnerTransferRequested(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionOwnerTransferRequested, subId []uint64) (event.Subscription, error)

	ParseSubscriptionOwnerTransferRequested(log types.Log) (*VRFCoordinatorV2SubscriptionOwnerTransferRequested, error)

	FilterSubscriptionOwnerTransferred(opts *bind.FilterOpts, subId []uint64) (*VRFCoordinatorV2SubscriptionOwnerTransferredIterator, error)

	WatchSubscriptionOwnerTransferred(opts *bind.WatchOpts, sink chan<- *VRFCoordinatorV2SubscriptionOwnerTransferred, subId []uint64) (event.Subscription, error)

	ParseSubscriptionOwnerTransferred(log types.Log) (*VRFCoordinatorV2SubscriptionOwnerTransferred, error)

	ParseLog(log types.Log) (generated.AbigenLog, error)

	Address() common.Address
}

type VRFCoordinatorV2OwnershipTransferRequested

type VRFCoordinatorV2OwnershipTransferRequested struct {
	From common.Address
	To   common.Address
	Raw  types.Log
}

func (VRFCoordinatorV2OwnershipTransferRequested) Topic

type VRFCoordinatorV2OwnershipTransferRequestedIterator

type VRFCoordinatorV2OwnershipTransferRequestedIterator struct {
	Event *VRFCoordinatorV2OwnershipTransferRequested
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2OwnershipTransferRequestedIterator) Close

func (*VRFCoordinatorV2OwnershipTransferRequestedIterator) Error

func (*VRFCoordinatorV2OwnershipTransferRequestedIterator) Next

type VRFCoordinatorV2OwnershipTransferred

type VRFCoordinatorV2OwnershipTransferred struct {
	From common.Address
	To   common.Address
	Raw  types.Log
}

func (VRFCoordinatorV2OwnershipTransferred) Topic

type VRFCoordinatorV2OwnershipTransferredIterator

type VRFCoordinatorV2OwnershipTransferredIterator struct {
	Event *VRFCoordinatorV2OwnershipTransferred
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2OwnershipTransferredIterator) Close

func (*VRFCoordinatorV2OwnershipTransferredIterator) Error

func (*VRFCoordinatorV2OwnershipTransferredIterator) Next

type VRFCoordinatorV2ProvingKeyDeregistered

type VRFCoordinatorV2ProvingKeyDeregistered struct {
	KeyHash [32]byte
	Oracle  common.Address
	Raw     types.Log
}

func (VRFCoordinatorV2ProvingKeyDeregistered) Topic

type VRFCoordinatorV2ProvingKeyDeregisteredIterator

type VRFCoordinatorV2ProvingKeyDeregisteredIterator struct {
	Event *VRFCoordinatorV2ProvingKeyDeregistered
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2ProvingKeyDeregisteredIterator) Close

func (*VRFCoordinatorV2ProvingKeyDeregisteredIterator) Error

func (*VRFCoordinatorV2ProvingKeyDeregisteredIterator) Next

type VRFCoordinatorV2ProvingKeyRegistered

type VRFCoordinatorV2ProvingKeyRegistered struct {
	KeyHash [32]byte
	Oracle  common.Address
	Raw     types.Log
}

func (VRFCoordinatorV2ProvingKeyRegistered) Topic

type VRFCoordinatorV2ProvingKeyRegisteredIterator

type VRFCoordinatorV2ProvingKeyRegisteredIterator struct {
	Event *VRFCoordinatorV2ProvingKeyRegistered
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2ProvingKeyRegisteredIterator) Close

func (*VRFCoordinatorV2ProvingKeyRegisteredIterator) Error

func (*VRFCoordinatorV2ProvingKeyRegisteredIterator) Next

type VRFCoordinatorV2RandomWordsFulfilled

type VRFCoordinatorV2RandomWordsFulfilled struct {
	RequestId *big.Int
	Output    []*big.Int
	Success   bool
	Raw       types.Log
}

func (VRFCoordinatorV2RandomWordsFulfilled) Topic

type VRFCoordinatorV2RandomWordsFulfilledIterator

type VRFCoordinatorV2RandomWordsFulfilledIterator struct {
	Event *VRFCoordinatorV2RandomWordsFulfilled
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2RandomWordsFulfilledIterator) Close

func (*VRFCoordinatorV2RandomWordsFulfilledIterator) Error

func (*VRFCoordinatorV2RandomWordsFulfilledIterator) Next

type VRFCoordinatorV2RandomWordsRequested

type VRFCoordinatorV2RandomWordsRequested struct {
	KeyHash                     [32]byte
	RequestId                   *big.Int
	PreSeed                     *big.Int
	SubId                       uint64
	MinimumRequestConfirmations uint16
	CallbackGasLimit            uint32
	NumWords                    uint32
	Sender                      common.Address
	Raw                         types.Log
}

func (VRFCoordinatorV2RandomWordsRequested) Topic

type VRFCoordinatorV2RandomWordsRequestedIterator

type VRFCoordinatorV2RandomWordsRequestedIterator struct {
	Event *VRFCoordinatorV2RandomWordsRequested
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2RandomWordsRequestedIterator) Close

func (*VRFCoordinatorV2RandomWordsRequestedIterator) Error

func (*VRFCoordinatorV2RandomWordsRequestedIterator) Next

type VRFCoordinatorV2Raw

type VRFCoordinatorV2Raw struct {
	Contract *VRFCoordinatorV2
}

func (*VRFCoordinatorV2Raw) Call

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

func (*VRFCoordinatorV2Raw) Transact

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

func (*VRFCoordinatorV2Raw) Transfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

type VRFCoordinatorV2RequestCommitment

type VRFCoordinatorV2RequestCommitment struct {
	BlockNum         uint64
	SubId            uint64
	CallbackGasLimit uint32
	NumWords         uint32
	Sender           common.Address
}

type VRFCoordinatorV2Session

type VRFCoordinatorV2Session struct {
	Contract     *VRFCoordinatorV2
	CallOpts     bind.CallOpts
	TransactOpts bind.TransactOpts
}

func (*VRFCoordinatorV2Session) AcceptOwnership

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) AcceptOwnership() (*types.Transaction, error)

func (*VRFCoordinatorV2Session) AcceptSubscriptionOwnerTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) AcceptSubscriptionOwnerTransfer(subId uint64) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) AddConsumer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) AddConsumer(subId uint64, consumer common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) BLOCKHASHSTORE

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) BLOCKHASHSTORE() (common.Address, error)

func (*VRFCoordinatorV2Session) CancelSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) CancelSubscription(subId uint64, to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) CreateSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) CreateSubscription() (*types.Transaction, error)

func (*VRFCoordinatorV2Session) DefundSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) DefundSubscription(subId uint64, to common.Address, amount *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) DeregisterProvingKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) DeregisterProvingKey(publicProvingKey [2]*big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) FulfillRandomWords

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) FulfillRandomWords(proof VRFProof, rc VRFCoordinatorV2RequestCommitment) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) GetCommitment

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) GetCommitment(requestId *big.Int) ([32]byte, error)

func (*VRFCoordinatorV2Session) GetConfig

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) GetConfig() (GetConfig,

	error)

func (*VRFCoordinatorV2Session) GetSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) GetSubscription(subId uint64) (GetSubscription,

	error)

func (*VRFCoordinatorV2Session) HashOfKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) HashOfKey(publicKey [2]*big.Int) ([32]byte, error)
func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) LINK() (common.Address, error)

func (*VRFCoordinatorV2Session) LINKETHFEED

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) LINKETHFEED() (common.Address, error)

func (*VRFCoordinatorV2Session) MAXCONSUMERS

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) MAXCONSUMERS() (uint16, error)

func (*VRFCoordinatorV2Session) MAXNUMWORDS

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) MAXNUMWORDS() (uint32, error)

func (*VRFCoordinatorV2Session) MAXREQUESTCONFIRMATIONS

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) MAXREQUESTCONFIRMATIONS() (uint16, error)

func (*VRFCoordinatorV2Session) MINGASLIMIT

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) MINGASLIMIT() (*big.Int, error)

func (*VRFCoordinatorV2Session) OnTokenTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) OnTokenTransfer(sender common.Address, amount *big.Int, data []byte) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) OracleWithdraw

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) OracleWithdraw(recipient common.Address, amount *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) Owner

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) Owner() (common.Address, error)

func (*VRFCoordinatorV2Session) RecoverFunds

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) RecoverFunds(to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) RegisterProvingKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) RegisterProvingKey(oracle common.Address, publicProvingKey [2]*big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) RemoveConsumer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) RemoveConsumer(subId uint64, consumer common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) RequestRandomWords

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) RequestRandomWords(keyHash [32]byte, subId uint64, requestConfirmations uint16, callbackGasLimit uint32, numWords uint32) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) RequestSubscriptionOwnerTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) RequestSubscriptionOwnerTransfer(subId uint64, newOwner common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) STotalBalance

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) STotalBalance() (*big.Int, error)

func (*VRFCoordinatorV2Session) SetConfig

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) SetConfig(minimumRequestConfirmations uint16, fulfillmentFlatFeeLinkPPM uint32, maxGasLimit uint32, stalenessSeconds uint32, gasAfterPaymentCalculation uint32, minimumSubscriptionBalance *big.Int, fallbackWeiPerUnitLink *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) TransferOwnership

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) TransferOwnership(to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Session) TypeAndVersion

func (_VRFCoordinatorV2 *VRFCoordinatorV2Session) TypeAndVersion() (string, error)

type VRFCoordinatorV2SubscriptionCanceled

type VRFCoordinatorV2SubscriptionCanceled struct {
	SubId  uint64
	To     common.Address
	Amount *big.Int
	Raw    types.Log
}

func (VRFCoordinatorV2SubscriptionCanceled) Topic

type VRFCoordinatorV2SubscriptionCanceledIterator

type VRFCoordinatorV2SubscriptionCanceledIterator struct {
	Event *VRFCoordinatorV2SubscriptionCanceled
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionCanceledIterator) Close

func (*VRFCoordinatorV2SubscriptionCanceledIterator) Error

func (*VRFCoordinatorV2SubscriptionCanceledIterator) Next

type VRFCoordinatorV2SubscriptionConsumerAdded

type VRFCoordinatorV2SubscriptionConsumerAdded struct {
	SubId    uint64
	Consumer common.Address
	Raw      types.Log
}

func (VRFCoordinatorV2SubscriptionConsumerAdded) Topic

type VRFCoordinatorV2SubscriptionConsumerAddedIterator

type VRFCoordinatorV2SubscriptionConsumerAddedIterator struct {
	Event *VRFCoordinatorV2SubscriptionConsumerAdded
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionConsumerAddedIterator) Close

func (*VRFCoordinatorV2SubscriptionConsumerAddedIterator) Error

func (*VRFCoordinatorV2SubscriptionConsumerAddedIterator) Next

type VRFCoordinatorV2SubscriptionConsumerRemoved

type VRFCoordinatorV2SubscriptionConsumerRemoved struct {
	SubId    uint64
	Consumer common.Address
	Raw      types.Log
}

func (VRFCoordinatorV2SubscriptionConsumerRemoved) Topic

type VRFCoordinatorV2SubscriptionConsumerRemovedIterator

type VRFCoordinatorV2SubscriptionConsumerRemovedIterator struct {
	Event *VRFCoordinatorV2SubscriptionConsumerRemoved
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionConsumerRemovedIterator) Close

func (*VRFCoordinatorV2SubscriptionConsumerRemovedIterator) Error

func (*VRFCoordinatorV2SubscriptionConsumerRemovedIterator) Next

type VRFCoordinatorV2SubscriptionCreated

type VRFCoordinatorV2SubscriptionCreated struct {
	SubId uint64
	Owner common.Address
	Raw   types.Log
}

func (VRFCoordinatorV2SubscriptionCreated) Topic

type VRFCoordinatorV2SubscriptionCreatedIterator

type VRFCoordinatorV2SubscriptionCreatedIterator struct {
	Event *VRFCoordinatorV2SubscriptionCreated
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionCreatedIterator) Close

func (*VRFCoordinatorV2SubscriptionCreatedIterator) Error

func (*VRFCoordinatorV2SubscriptionCreatedIterator) Next

type VRFCoordinatorV2SubscriptionDefunded

type VRFCoordinatorV2SubscriptionDefunded struct {
	SubId      uint64
	OldBalance *big.Int
	NewBalance *big.Int
	Raw        types.Log
}

func (VRFCoordinatorV2SubscriptionDefunded) Topic

type VRFCoordinatorV2SubscriptionDefundedIterator

type VRFCoordinatorV2SubscriptionDefundedIterator struct {
	Event *VRFCoordinatorV2SubscriptionDefunded
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionDefundedIterator) Close

func (*VRFCoordinatorV2SubscriptionDefundedIterator) Error

func (*VRFCoordinatorV2SubscriptionDefundedIterator) Next

type VRFCoordinatorV2SubscriptionFunded

type VRFCoordinatorV2SubscriptionFunded struct {
	SubId      uint64
	OldBalance *big.Int
	NewBalance *big.Int
	Raw        types.Log
}

func (VRFCoordinatorV2SubscriptionFunded) Topic

type VRFCoordinatorV2SubscriptionFundedIterator

type VRFCoordinatorV2SubscriptionFundedIterator struct {
	Event *VRFCoordinatorV2SubscriptionFunded
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionFundedIterator) Close

func (*VRFCoordinatorV2SubscriptionFundedIterator) Error

func (*VRFCoordinatorV2SubscriptionFundedIterator) Next

type VRFCoordinatorV2SubscriptionOwnerTransferRequested

type VRFCoordinatorV2SubscriptionOwnerTransferRequested struct {
	SubId uint64
	From  common.Address
	To    common.Address
	Raw   types.Log
}

func (VRFCoordinatorV2SubscriptionOwnerTransferRequested) Topic

type VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator

type VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator struct {
	Event *VRFCoordinatorV2SubscriptionOwnerTransferRequested
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator) Close

func (*VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator) Error

func (*VRFCoordinatorV2SubscriptionOwnerTransferRequestedIterator) Next

type VRFCoordinatorV2SubscriptionOwnerTransferred

type VRFCoordinatorV2SubscriptionOwnerTransferred struct {
	SubId uint64
	From  common.Address
	To    common.Address
	Raw   types.Log
}

func (VRFCoordinatorV2SubscriptionOwnerTransferred) Topic

type VRFCoordinatorV2SubscriptionOwnerTransferredIterator

type VRFCoordinatorV2SubscriptionOwnerTransferredIterator struct {
	Event *VRFCoordinatorV2SubscriptionOwnerTransferred
	// contains filtered or unexported fields
}

func (*VRFCoordinatorV2SubscriptionOwnerTransferredIterator) Close

func (*VRFCoordinatorV2SubscriptionOwnerTransferredIterator) Error

func (*VRFCoordinatorV2SubscriptionOwnerTransferredIterator) Next

type VRFCoordinatorV2Transactor

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

func NewVRFCoordinatorV2Transactor

func NewVRFCoordinatorV2Transactor(address common.Address, transactor bind.ContractTransactor) (*VRFCoordinatorV2Transactor, error)

func (*VRFCoordinatorV2Transactor) AcceptOwnership

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) AcceptOwnership(opts *bind.TransactOpts) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) AcceptSubscriptionOwnerTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) AcceptSubscriptionOwnerTransfer(opts *bind.TransactOpts, subId uint64) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) AddConsumer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) AddConsumer(opts *bind.TransactOpts, subId uint64, consumer common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) CancelSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) CancelSubscription(opts *bind.TransactOpts, subId uint64, to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) CreateSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) CreateSubscription(opts *bind.TransactOpts) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) DefundSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) DefundSubscription(opts *bind.TransactOpts, subId uint64, to common.Address, amount *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) DeregisterProvingKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) DeregisterProvingKey(opts *bind.TransactOpts, publicProvingKey [2]*big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) FulfillRandomWords

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) FulfillRandomWords(opts *bind.TransactOpts, proof VRFProof, rc VRFCoordinatorV2RequestCommitment) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) OnTokenTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) OnTokenTransfer(opts *bind.TransactOpts, sender common.Address, amount *big.Int, data []byte) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) OracleWithdraw

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) OracleWithdraw(opts *bind.TransactOpts, recipient common.Address, amount *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) RecoverFunds

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) RecoverFunds(opts *bind.TransactOpts, to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) RegisterProvingKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) RegisterProvingKey(opts *bind.TransactOpts, oracle common.Address, publicProvingKey [2]*big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) RemoveConsumer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) RemoveConsumer(opts *bind.TransactOpts, subId uint64, consumer common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) RequestRandomWords

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) RequestRandomWords(opts *bind.TransactOpts, keyHash [32]byte, subId uint64, requestConfirmations uint16, callbackGasLimit uint32, numWords uint32) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) RequestSubscriptionOwnerTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) RequestSubscriptionOwnerTransfer(opts *bind.TransactOpts, subId uint64, newOwner common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) SetConfig

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) SetConfig(opts *bind.TransactOpts, minimumRequestConfirmations uint16, fulfillmentFlatFeeLinkPPM uint32, maxGasLimit uint32, stalenessSeconds uint32, gasAfterPaymentCalculation uint32, minimumSubscriptionBalance *big.Int, fallbackWeiPerUnitLink *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2Transactor) TransferOwnership

func (_VRFCoordinatorV2 *VRFCoordinatorV2Transactor) TransferOwnership(opts *bind.TransactOpts, to common.Address) (*types.Transaction, error)

type VRFCoordinatorV2TransactorRaw

type VRFCoordinatorV2TransactorRaw struct {
	Contract *VRFCoordinatorV2Transactor
}

func (*VRFCoordinatorV2TransactorRaw) Transact

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

func (*VRFCoordinatorV2TransactorRaw) Transfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

type VRFCoordinatorV2TransactorSession

type VRFCoordinatorV2TransactorSession struct {
	Contract     *VRFCoordinatorV2Transactor
	TransactOpts bind.TransactOpts
}

func (*VRFCoordinatorV2TransactorSession) AcceptOwnership

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) AcceptOwnership() (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) AcceptSubscriptionOwnerTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) AcceptSubscriptionOwnerTransfer(subId uint64) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) AddConsumer

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) AddConsumer(subId uint64, consumer common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) CancelSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) CancelSubscription(subId uint64, to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) CreateSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) CreateSubscription() (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) DefundSubscription

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) DefundSubscription(subId uint64, to common.Address, amount *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) DeregisterProvingKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) DeregisterProvingKey(publicProvingKey [2]*big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) FulfillRandomWords

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) FulfillRandomWords(proof VRFProof, rc VRFCoordinatorV2RequestCommitment) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) OnTokenTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) OnTokenTransfer(sender common.Address, amount *big.Int, data []byte) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) OracleWithdraw

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) OracleWithdraw(recipient common.Address, amount *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) RecoverFunds

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) RecoverFunds(to common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) RegisterProvingKey

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) RegisterProvingKey(oracle common.Address, publicProvingKey [2]*big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) RemoveConsumer

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) RemoveConsumer(subId uint64, consumer common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) RequestRandomWords

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) RequestRandomWords(keyHash [32]byte, subId uint64, requestConfirmations uint16, callbackGasLimit uint32, numWords uint32) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) RequestSubscriptionOwnerTransfer

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) RequestSubscriptionOwnerTransfer(subId uint64, newOwner common.Address) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) SetConfig

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) SetConfig(minimumRequestConfirmations uint16, fulfillmentFlatFeeLinkPPM uint32, maxGasLimit uint32, stalenessSeconds uint32, gasAfterPaymentCalculation uint32, minimumSubscriptionBalance *big.Int, fallbackWeiPerUnitLink *big.Int) (*types.Transaction, error)

func (*VRFCoordinatorV2TransactorSession) TransferOwnership

func (_VRFCoordinatorV2 *VRFCoordinatorV2TransactorSession) TransferOwnership(to common.Address) (*types.Transaction, error)

type VRFProof

type VRFProof struct {
	Pk            [2]*big.Int
	Gamma         [2]*big.Int
	C             *big.Int
	S             *big.Int
	Seed          *big.Int
	UWitness      common.Address
	CGammaWitness [2]*big.Int
	SHashWitness  [2]*big.Int
	ZInv          *big.Int
}

Jump to

Keyboard shortcuts

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