0 txs
0 calls
constructor
constructor(address host, string registrationKey)
functions
beforeAgreementCreated
viewfunction beforeAgreementCreated(address, address, bytes32, bytes, bytes) view returns (bytes)
beforeAgreementTerminated
viewfunction beforeAgreementTerminated(address, address, bytes32, bytes, bytes) view returns (bytes)
beforeAgreementUpdated
viewfunction beforeAgreementUpdated(address, address, bytes32, bytes, bytes) view returns (bytes)
cfaV1
viewfunction cfaV1() view returns (address host, address cfa)
flowSchedules
viewfunction flowSchedules(bytes32) view returns (uint32 startDate, uint32 startMaxDelay, uint32 endDate, int96 flowRate, uint256 startAmount, bytes32 userData)
getFlowSchedule
viewfunction getFlowSchedule(address superToken, address sender, address receiver) view returns (tuple)
afterAgreementCreated
nonpayablefunction afterAgreementCreated(address, address, bytes32, bytes, bytes, bytes) returns (bytes)
afterAgreementTerminated
nonpayablefunction afterAgreementTerminated(address, address, bytes32, bytes, bytes, bytes) returns (bytes)
afterAgreementUpdated
nonpayablefunction afterAgreementUpdated(address, address, bytes32, bytes, bytes, bytes) returns (bytes)
createFlowSchedule
nonpayablefunction createFlowSchedule(address superToken, address receiver, uint32 startDate, uint32 startMaxDelay, int96 flowRate, uint256 startAmount, uint32 endDate, bytes userData, bytes ctx) returns (bytes newCtx)
deleteFlowSchedule
nonpayablefunction deleteFlowSchedule(address superToken, address receiver, bytes ctx) returns (bytes newCtx)
executeCreateFlow
nonpayablefunction executeCreateFlow(address superToken, address sender, address receiver, bytes userData) returns (bool success)
executeDeleteFlow
nonpayablefunction executeDeleteFlow(address superToken, address sender, address receiver, bytes userData) returns (bool success)
events
CreateFlowExecuted
event CreateFlowExecuted(address indexed superToken, address indexed sender, address indexed receiver, uint32 startDate, uint32 startMaxDelay, int96 flowRate, uint256 startAmount, bytes userData)
DeleteFlowExecuted
event DeleteFlowExecuted(address indexed superToken, address indexed sender, address indexed receiver, uint32 endDate, bytes userData)
FlowScheduleCreated
event FlowScheduleCreated(address indexed superToken, address indexed sender, address indexed receiver, uint32 startDate, uint32 startMaxDelay, int96 flowRate, uint32 endDate, uint256 startAmount, bytes userData)
FlowScheduleDeleted
event FlowScheduleDeleted(address indexed superToken, address indexed sender, address indexed receiver)
errors
AccountInvalid
error AccountInvalid()
HostInvalid
error HostInvalid()
ScheduleInvalid
error ScheduleInvalid()
TimeWindowInvalid
error TimeWindowInvalid()
UserDataInvalid
error UserDataInvalid()
ZeroAddress
error ZeroAddress()
creation bytecode
0x60806040523480156200001157600080fd5b5060405162001cf938038062001cf98339810160408190526200003491620001cc565b6040805180820182526001600160a01b0384168082529151635b69006f60e11b81527fa9214cc96615e0085d3bb077758db69497dc2dce3b2b1e97bc93c3d18d83efd360048201529091602083019163b6d200de90602401602060405180830381865afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d091906200029c565b6001600160a01b039081169091528151600180549183166001600160a01b031992831617905560209092015160028054918316919093161790915560405163bd1c448b60e01b8152643f000000019184169063bd1c448b906200013a9084908690600401620002c3565b600060405180830381600087803b1580156200015557600080fd5b505af11580156200016a573d6000803e3d6000fd5b50505050505050620002ff565b6001600160a01b03811681146200018d57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001c3578181015183820152602001620001a9565b50506000910152565b60008060408385031215620001e057600080fd5b8251620001ed8162000177565b60208401519092506001600160401b03808211156200020b57600080fd5b818501915085601f8301126200022057600080fd5b81518181111562000235576200023562000190565b604051601f8201601f19908116603f0116810190838211818310171562000260576200026062000190565b816040528281528860208487010111156200027a57600080fd5b6200028d836020830160208801620001a6565b80955050505050509250929050565b600060208284031215620002af57600080fd5b8151620002bc8162000177565b9392505050565b8281526040602082015260008251806040840152620002ea816060850160208701620001a6565b601f01601f1916919091016060019392505050565b6119ea806200030f6000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063884d1f401161008c5780639ccaadaf116100665780639ccaadaf14610227578063d3112b2e14610295578063d86ed3e5146102cf578063fc7a599a146102e257600080fd5b8063884d1f401461016c578063957ea1691461017f57806398550d331461021457600080fd5b806304db3b88146100d4578063230dbd29146100fd57806330d9c9151461011057806353c11f99146101235780635f9e7d77146101365780637c4e503714610149575b600080fd5b6100e76100e23660046111e5565b6102f5565b6040516100f4919061130b565b60405180910390f35b6100e761010b36600461136e565b6105dc565b6100e761011e366004611439565b610643565b6100e761013136600461136e565b6106a6565b6100e7610144366004611439565b61070b565b61015c6101573660046114d8565b610772565b60405190151581526020016100f4565b6100e761017a366004611439565b610a38565b6101d661018d36600461154d565b60006020819052908152604090208054600182015460029092015463ffffffff808316936401000000008404821693600160401b810490921692600160601b909204600b0b9186565b6040805163ffffffff978816815295871660208701529390951692840192909252600b0b6060830152608082015260a081019190915260c0016100f4565b6100e7610222366004611566565b610a9b565b61023a6102353660046115c8565b610b46565b6040516100f49190600060c08201905063ffffffff808451168352806020850151166020840152806040850151166040840152506060830151600b0b60608301526080830151608083015260a083015160a083015292915050565b6001546002546102af916001600160a01b03908116911682565b604080516001600160a01b039384168152929091166020830152016100f4565b6100e76102dd36600461136e565b610c18565b61015c6102f03660046114d8565b610c7a565b80600061030182610dfa565b90506001600160a01b038a16158061032a5750806001600160a01b03168a6001600160a01b0316145b156103485760405163a9c6791d60e01b815260040160405180910390fd5b6001600160a01b038b1661036f5760405163d92e233d60e01b815260040160405180910390fd5b8863ffffffff166000036103b85763ffffffff8816151580610395575063ffffffff8516155b156103b357604051633a230cd960e01b815260040160405180910390fd5b610407565b428963ffffffff161115806103e957508463ffffffff168963ffffffff16101580156103e9575063ffffffff851615155b1561040757604051633a230cd960e01b815260040160405180910390fd5b63ffffffff8516158015906104225750428563ffffffff1611155b1561044057604051633a230cd960e01b815260040160405180910390fd5b6040518060c001604052808a63ffffffff1681526020018963ffffffff1681526020018663ffffffff16815260200188600b0b8152602001878152602001855160000361048e576000610496565b855160208701205b8152506000808d848e6040516020016104b193929190611613565b60408051601f19818403018152918152815160209283012083528282019390935290820160002083518154928501518585015160608701516bffffffffffffffffffffffff16600160601b026bffffffffffffffffffffffff60601b1963ffffffff928316600160401b021677ffffffffffffffffffffffffffffffff0000000000000000199383166401000000000267ffffffffffffffff1990971692909416919091179490941716179190911781556080830151600182015560a090920151600290920191909155516001600160a01b03808c1691838216918e16907f78e3ea8b5a93e598a03e9162fc7498f01df4be2d6556d67eb67ecb9314e92dbd906105c6908e908e908e908d908f908e90611642565b60405180910390a4509998505050505050505050565b60405162461bcd60e51b815260206004820152602e60248201527f556e737570706f727465642063616c6c6261636b202d2041667465722041677260448201526d19595b595b9d08155c19185d195960921b60648201526060906084015b60405180910390fd5b60405162461bcd60e51b815260206004820152602f60248201527f556e737570706f727465642063616c6c6261636b202d204265666f726520416760448201526e1c99595b595b9d0810dc99585d1959608a1b606482015260609060840161063a565b60405162461bcd60e51b815260206004820152603160248201527f556e737570706f727465642063616c6c6261636b202d2041667465722041677260448201527019595b595b9d0815195c9b5a5b985d1959607a1b606482015260609060840161063a565b60405162461bcd60e51b815260206004820152603360248201527f556e737570706f727465642063616c6c6261636b202d20204265666f7265204160448201527219dc99595b595b9d0815195c9b5a5b985d1959606a1b606482015260609060840161063a565b60008085858560405160200161078a93929190611613565b60408051601f198184030181528282528051602091820120600081815280835283902060c085018452805463ffffffff8082168088526401000000008304821695880195909552600160401b82041694860194909452600160601b909304600b0b60608501526001830154608085015260029092015460a0840152909250158061081d575042816000015163ffffffff16115b8061083d57506020810151815142916108359161168e565b63ffffffff16105b1561085b57604051633a230cd960e01b815260040160405180910390fd5b8060a001518451600003610870576000610878565b845160208601205b1461089657604051638ced320d60e01b815260040160405180910390fd5b6080810151156109395760008281526020819052604080822060010191909155608082015190516323b872dd60e01b81526001600160a01b03888116600483015287811660248301526044820192909252908816906323b872dd906064016020604051808303816000875af1158015610913573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093791906116c0565b505b806040015163ffffffff1660000361097757600082815260208190526040812080546001600160c01b031916815560018101829055600201556109a5565b6000828152602081905260409020805477ffffffffffffffffffffffff00000000ffffffffffffffff191690555b60608101516109bd90600190889088908b9089610ece565b50846001600160a01b0316866001600160a01b0316886001600160a01b03167fdcab26a5ac743e62a3f426d2d95cbfaf18749ea5632c5d8199662c2d499a497c84600001518560200151866060015187608001518b604051610a239594939291906116e2565b60405180910390a45060019695505050505050565b60405162461bcd60e51b815260206004820152602f60248201527f556e737570706f727465642063616c6c6261636b202d204265666f726520416760448201526e1c99595b595b9d081d5c19185d1959608a1b606482015260609060840161063a565b806000610aa782610dfa565b9050600080868387604051602001610ac193929190611613565b60408051601f1981840301815291815281516020928301208352908201929092528101600090812080546001600160c01b03191681556001810182905560020181905590516001600160a01b038087169284821692918916917f4d2e2ca3372350ff5347640acfa1163cbbe56592c1a21f81275081dd5b6d42b29190a4509392505050565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152600080858585604051602001610b9093929190611613565b60408051808303601f190181529181528151602092830120835282820193909352908201600020825160c081018452815463ffffffff80821683526401000000008204811694830194909452600160401b810490931693810193909352600160601b909104600b0b6060830152600181015460808301526002015460a0820152949350505050565b60405162461bcd60e51b815260206004820152602e60248201527f556e737570706f727465642063616c6c6261636b202d2041667465722041677260448201526d19595b595b9d0810dc99585d195960921b606482015260609060840161063a565b600080858585604051602001610c9293929190611613565b60408051601f198184030181528282528051602091820120600081815280835283812060c086018552805463ffffffff80821688526401000000008204811688870152600160401b82048116968801968752600160601b8204600b0b606089015260018301805460808a015260028401805460a08b0152868652968590526001600160c01b031990921690925582905592559151919350161580610d3f575042816040015163ffffffff16115b15610d5d57604051633a230cd960e01b815260040160405180910390fd5b8060a001518451600003610d72576000610d7a565b845160208601205b14610d9857604051638ced320d60e01b815260040160405180910390fd5b610da6600187878a88610fd3565b50846001600160a01b0316866001600160a01b0316886001600160a01b03167f496dde0c639fcc70501439d3522a80821e1239a059b799941d38e303cd073db5846040015188604051610a2392919061171a565b60008151600014610eb0576001546001600160a01b03163314610e3057604051632772d7f360e21b815260040160405180910390fd5b600154604051631fb6491d60e11b81526001600160a01b0390911690633f6c923a90610e6090859060040161130b565b600060405180830381865afa158015610e7d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ea591908101906117ba565b606001519050610eb3565b50335b6001600160a01b038116610ec957610ec96118c1565b919050565b855460018701546060916001600160a01b03908116916339255d5b9116806394229ecb888b8b8a60006040519080825280601f01601f191660200182016040528015610f21576020820181803683370190505b50604051602401610f369594939291906118d7565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f81939250908790600401611915565b6000604051808303816000875af1158015610fa0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fc8919081019061194b565b979650505050505050565b845460018601546040805160008152602081019091526060926001600160a01b03908116926339255d5b929116908190634c8b181f9061101c9089908c908c9060448101611980565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611067939250908790600401611915565b6000604051808303816000875af1158015611086573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110ae919081019061194b565b9695505050505050565b6001600160a01b03811681146110cd57600080fd5b50565b803563ffffffff81168114610ec957600080fd5b8035600b81900b8114610ec957600080fd5b634e487b7160e01b600052604160045260246000fd5b604051610160810167ffffffffffffffff81118282101715611130576111306110f6565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561115f5761115f6110f6565b604052919050565b600067ffffffffffffffff821115611181576111816110f6565b50601f01601f191660200190565b600082601f8301126111a057600080fd5b81356111b36111ae82611167565b611136565b8181528460208386010111156111c857600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060008060006101208a8c03121561120457600080fd5b893561120f816110b8565b985060208a013561121f816110b8565b975061122d60408b016110d0565b965061123b60608b016110d0565b955061124960808b016110e4565b945060a08a0135935061125e60c08b016110d0565b925060e08a013567ffffffffffffffff8082111561127b57600080fd5b6112878d838e0161118f565b93506101008c013591508082111561129e57600080fd5b506112ab8c828d0161118f565b9150509295985092959850929598565b60005b838110156112d65781810151838201526020016112be565b50506000910152565b600081518084526112f78160208601602086016112bb565b601f01601f19169290920160200192915050565b60208152600061131e60208301846112df565b9392505050565b60008083601f84011261133757600080fd5b50813567ffffffffffffffff81111561134f57600080fd5b60208301915083602082850101111561136757600080fd5b9250929050565b600080600080600080600080600060c08a8c03121561138c57600080fd5b8935611397816110b8565b985060208a01356113a7816110b8565b975060408a0135965060608a013567ffffffffffffffff808211156113cb57600080fd5b6113d78d838e01611325565b909850965060808c01359150808211156113f057600080fd5b6113fc8d838e01611325565b909650945060a08c013591508082111561141557600080fd5b506114228c828d01611325565b915080935050809150509295985092959850929598565b600080600080600080600060a0888a03121561145457600080fd5b873561145f816110b8565b9650602088013561146f816110b8565b955060408801359450606088013567ffffffffffffffff8082111561149357600080fd5b61149f8b838c01611325565b909650945060808a01359150808211156114b857600080fd5b506114c58a828b01611325565b989b979a50959850939692959293505050565b600080600080608085870312156114ee57600080fd5b84356114f9816110b8565b93506020850135611509816110b8565b92506040850135611519816110b8565b9150606085013567ffffffffffffffff81111561153557600080fd5b6115418782880161118f565b91505092959194509250565b60006020828403121561155f57600080fd5b5035919050565b60008060006060848603121561157b57600080fd5b8335611586816110b8565b92506020840135611596816110b8565b9150604084013567ffffffffffffffff8111156115b257600080fd5b6115be8682870161118f565b9150509250925092565b6000806000606084860312156115dd57600080fd5b83356115e8816110b8565b925060208401356115f8816110b8565b91506040840135611608816110b8565b809150509250925092565b6bffffffffffffffffffffffff19606094851b8116825292841b83166014820152921b166028820152603c0190565b600063ffffffff8089168352808816602084015286600b0b604084015280861660608401525083608083015260c060a083015261168260c08301846112df565b98975050505050505050565b63ffffffff8181168382160190808211156116b957634e487b7160e01b600052601160045260246000fd5b5092915050565b6000602082840312156116d257600080fd5b8151801515811461131e57600080fd5b600063ffffffff808816835280871660208401525084600b0b604083015283606083015260a06080830152610fc860a08301846112df565b63ffffffff8316815260406020820152600061173960408301846112df565b949350505050565b805160ff81168114610ec957600080fd5b8051610ec9816110b8565b80516001600160e01b031981168114610ec957600080fd5b600082601f83011261178657600080fd5b81516117946111ae82611167565b8181528460208386010111156117a957600080fd5b6117398260208301602087016112bb565b6000602082840312156117cc57600080fd5b815167ffffffffffffffff808211156117e457600080fd5b9083019061016082860312156117f957600080fd5b61180161110c565b61180a83611741565b815261181860208401611741565b60208201526040830151604082015261183360608401611752565b60608201526118446080840161175d565b608082015260a08301518281111561185b57600080fd5b61186787828601611775565b60a08301525060c083015160c082015260e083015160e082015261010091508183015182820152610120915061189e828401611752565b8282015261014091506118b2828401611752565b91810191909152949350505050565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b038681168252858116602083015284166040820152600b83900b606082015260a060808201819052600090610fc8908301846112df565b6001600160a01b0384168152606060208201819052600090611939908301856112df565b82810360408401526110ae81856112df565b60006020828403121561195d57600080fd5b815167ffffffffffffffff81111561197457600080fd5b61173984828501611775565b6001600160a01b0385811682528481166020830152831660408201526080606082018190526000906110ae908301846112df56fea26469706673582212208b2418064b469d1249444fc5e867371d2748f98c9af8e4edb409693c9bc0bf5f64736f6c63430008110033000000000000000000000000d1e2cfb6441680002eb7a44223160ab9b67d7e6e000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000026b31000000000000000000000000000000000000000000000000000000000000