0 txs
57 calls
constructor
constructor()
functions
activeAdaptersCount
viewfunction activeAdaptersCount() view returns (uint256)
adapters
viewfunction adapters(uint256) view returns (address)
adaptersCount
viewfunction adaptersCount() view returns (uint256)
fee_percentage
viewfunction fee_percentage() view returns (uint256)
MAX_FEE_LIMIT
viewfunction MAX_FEE_LIMIT() view returns (uint256)
MAX_FEE_PERCENTAGE
viewfunction MAX_FEE_PERCENTAGE() view returns (uint256)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
pendingOwner
viewfunction pendingOwner() view returns (address)
treasury
viewfunction treasury() view returns (address)
zeroAdapters
viewfunction zeroAdapters(uint256) view returns (uint256)
zeroAdaptersCount
viewfunction zeroAdaptersCount() view returns (uint256)
acceptOwnership
nonpayablefunction acceptOwnership()
addAdapter
nonpayablefunction addAdapter(address adapter) returns (uint256 id)
deposit
nonpayablefunction deposit(uint256 adapterId, uint256 amount)
initialize
nonpayablefunction initialize(address _governance, address _treasury, uint256 _fee_percentage)
migrate
nonpayablefunction migrate(uint256[] adapterIds, address newRouter)
pause
nonpayablefunction pause()
removeAdapter
nonpayablefunction removeAdapter(uint256 id)
renounceOwnership
nonpayablefunction renounceOwnership()
setAdapter
nonpayablefunction setAdapter(uint256 id, address adapter)
setFeePercentage
nonpayablefunction setFeePercentage(uint256 _fee_percentage)
setTreasury
nonpayablefunction setTreasury(address _treasury)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unpause
nonpayablefunction unpause()
withdraw
nonpayablefunction withdraw(uint256 adapterId)
events
AdapterUpdated
event AdapterUpdated(uint256 id, address previous, address current)
FeePercentageUpdated
event FeePercentageUpdated(uint256 previous, uint256 current)
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
TreasuryUpdated
event TreasuryUpdated(address previous, address current)
Unpaused
event Unpaused(address account)
errors
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
InvalidInitialization
error InvalidInitialization()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x6080604052348015600f57600080fd5b506016601a565b60ca565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560695760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c75780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6117d2806100d96000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c80637c7a561b116100de578063d733fff911610097578063e30c397811610071578063e30c3978146102fe578063f0f4426014610306578063f2fde38b14610319578063fcb38a8b1461032c57600080fd5b8063d733fff9146102c5578063e26bbe80146102d8578063e2bbb158146102eb57600080fd5b80637c7a561b146102875780638456cb591461028f5780638da5cb5b146102975780639edc5f0f1461029f578063ae06c1b7146102a9578063c46ed45a146102bc57600080fd5b8063558e44d31161014b57806360d54d411161012557806360d54d411461025157806361d027b314610264578063715018a61461027757806379ba50971461027f57600080fd5b8063558e44d31461021c57806359785c4e146102265780635c975abb1461022e57600080fd5b80630710696d146101935780631794bb3c146101ae5780632591cf7e146101c35780632e1a7d4d146101d65780633f4ba83a146101e95780634ef501ac146101f1575b600080fd5b61019b61033f565b6040519081526020015b60405180910390f35b6101c16101bc366004611492565b610356565b005b6101c16101d13660046114d3565b61047a565b6101c16101e43660046114d3565b6104da565b6101c1610544565b6102046101ff3660046114d3565b610556565b6040516001600160a01b0390911681526020016101a5565b61019b620f424081565b60035461019b565b60008051602061177d8339815191525460ff1660405190151581526020016101a5565b61019b61025f3660046114ec565b610580565b600054610204906001600160a01b031681565b6101c16105e0565b6101c16105f2565b60025461019b565b6101c1610637565b610204610647565b61019b620493e081565b6101c16102b73660046114d3565b61067c565b61019b60015481565b61019b6102d33660046114d3565b61068d565b6101c16102e6366004611510565b6106ae565b6101c16102f9366004611540565b6107d0565b61020461083b565b6101c16103143660046114ec565b610864565b6101c16103273660046114ec565b610875565b6101c161033a366004611562565b6108fa565b60035460025460009161035191611601565b905090565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff1660008115801561039c5750825b905060008267ffffffffffffffff1660011480156103b95750303b155b9050811580156103c7575080155b156103e55760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561040f57845460ff60401b1916600160401b1785555b61041888610a38565b61042187610a49565b61042a86610ac5565b831561047057845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610482610b59565b60025481106104cc5760405162461bcd60e51b8152602060048201526011602482015270125b9d985b1a59081859185c1d195c9259607a1b60448201526064015b60405180910390fd5b6104d7816000610b8b565b50565b6104e2610cda565b6104ea610d24565b61051b6002828154811061050057610500611614565b6000918252602090912001546001600160a01b031633610d55565b6104d760017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055565b61054c610b59565b610554610e8c565b565b6002818154811061056657600080fd5b6000918252602090912001546001600160a01b0316905081565b600061058a610b59565b61059382610eec565b6105d15760405162461bcd60e51b815260206004820152600f60248201526e24b73b30b634b21030b230b83a32b960891b60448201526064016104c3565b6105da82610f7d565b92915050565b6105e8610b59565b6105546000611002565b33806105fc61083b565b6001600160a01b03161461062e5760405163118cdaa760e01b81526001600160a01b03821660048201526024016104c3565b6104d781611002565b61063f610b59565b61055461103a565b6000807f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993005b546001600160a01b031692915050565b610684610b59565b6104d781610ac5565b6003818154811061069d57600080fd5b600091825260209091200154905081565b6106b6610b59565b60025482106106fb5760405162461bcd60e51b8152602060048201526011602482015270125b9d985b1a59081859185c1d195c9259607a1b60448201526064016104c3565b61070481610eec565b6107425760405162461bcd60e51b815260206004820152600f60248201526e24b73b30b634b21030b230b83a32b960891b60448201526064016104c3565b60006001600160a01b03166002838154811061076057610760611614565b6000918252602090912001546001600160a01b0316036107c25760405162461bcd60e51b815260206004820152601d60248201527f496e736563757265207a65726f2d616461707465722073657474696e6700000060448201526064016104c3565b6107cc8282610b8b565b5050565b6107d8610cda565b6107e0610d24565b610812600283815481106107f6576107f6611614565b6000918252602090912001546001600160a01b03163383611083565b6107cc60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055565b6000807f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c0061066c565b61086c610b59565b6104d781610a49565b61087d610b59565b7f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c0080546001600160a01b0319166001600160a01b03831690811782556108c1610647565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a35050565b610902610b59565b6001600160a01b0381166109585760405162461bcd60e51b815260206004820152601760248201527f4e657720726f75746572207a65726f206164647265737300000000000000000060448201526064016104c3565b60005b82811015610a32576000600285858481811061097957610979611614565b905060200201358154811061099057610990611614565b6000918252602090912001546001600160a01b031690506109ca8585848181106109bc576109bc611614565b905060200201356000610b8b565b60405163c0d7865560e01b81526001600160a01b03848116600483015282169063c0d7865590602401600060405180830381600087803b158015610a0d57600080fd5b505af1158015610a21573d6000803e3d6000fd5b50506001909301925061095b915050565b50505050565b610a40611266565b6104d7816112af565b6001600160a01b038116610a5c57600080fd5b600054604080516001600160a01b03928316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a910160405180910390a1600080546001600160a01b0319166001600160a01b0392909216919091179055565b620493e0811115610b185760405162461bcd60e51b815260206004820152601c60248201527f4665652070657263656e746167652065786365656473206c696d69740000000060448201526064016104c3565b60015460408051918252602082018390527fb27c12a91635e11c22bffa7bd8e0a8735da52b94aaefd7f249776c7590ba7894910160405180910390a1600155565b33610b62610647565b6001600160a01b0316146105545760405163118cdaa760e01b81523360048201526024016104c3565b806001600160a01b031660028381548110610ba857610ba8611614565b6000918252602090912001546001600160a01b031603610bf95760405162461bcd60e51b815260206004820152600c60248201526b29b0b6b29030b230b83a32b960a11b60448201526064016104c3565b7f89a0e29835f073920f47ea5bf406463004d0e9f9a0e76d38bbd254067a09787c8260028481548110610c2e57610c2e611614565b60009182526020918290200154604080519384526001600160a01b039182169284019290925284169082015260600160405180910390a18060028381548110610c7957610c79611614565b600091825260209091200180546001600160a01b0319166001600160a01b0392831617905581166107cc5750600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0155565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00805460011901610d1e57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b60008051602061177d8339815191525460ff16156105545760405163d93c066560e01b815260040160405180910390fd5b6000826001600160a01b031663c89039c56040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d95573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db9919061162a565b6040516351cff8d960e01b81526001600160a01b0384811660048301529192506000918516906351cff8d9906024016060604051808303816000875af1158015610e07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2b9190611647565b90506000610e3f82602001516001546112e1565b915050610e698585838560000151610e579190611601565b6001600160a01b038716929190611311565b600054610e85906001600160a01b038581169188911684611311565b5050505050565b610e9461136b565b60008051602061177d833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b60006001600160a01b038216158015906105da5750306001600160a01b0316826001600160a01b031663f887ea406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6d919061162a565b6001600160a01b03161492915050565b60035460009015610fe15760038054610f9890600190611601565b81548110610fa857610fa8611614565b906000526020600020015490506003805480610fc657610fc66116b3565b60019003818190600052602060002001600090559055610ff3565b50600280546001810182556000919091525b610ffd8183610b8b565b919050565b7f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c0080546001600160a01b03191681556107cc8261139b565b611042610d24565b60008051602061177d833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833610ece565b6000836001600160a01b031663c89039c56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e7919061162a565b6040516370a0823160e01b81526001600160a01b0386811660048301529192506000918316906370a0823190602401602060405180830381865afa158015611133573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115791906116c9565b905061116e6001600160a01b038316858786611311565b6040516370a0823160e01b81526001600160a01b03868116600483015260009183918516906370a0823190602401602060405180830381865afa1580156111b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111dd91906116c9565b6111e79190611601565b6040516311f9fbc960e21b81526001600160a01b03878116600483015260248201839052919250908716906347e7ef249060440160408051808303816000875af1158015611239573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125d91906116e2565b50505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661055457604051631afcd79f60e31b815260040160405180910390fd5b6112b7611266565b6001600160a01b03811661062e57604051631e4fbdf760e01b8152600060048201526024016104c3565b600080620f42406112f28486611743565b6112fc919061175a565b90506113088185611601565b91509250929050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610a3290859061140c565b60008051602061177d8339815191525460ff1661055457604051638dfc202b60e01b815260040160405180910390fd5b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b600080602060008451602086016000885af18061142f576040513d6000823e3d81fd5b50506000513d91508115611447578060011415611454565b6001600160a01b0384163b155b15610a3257604051635274afe760e01b81526001600160a01b03851660048201526024016104c3565b6001600160a01b03811681146104d757600080fd5b6000806000606084860312156114a757600080fd5b83356114b28161147d565b925060208401356114c28161147d565b929592945050506040919091013590565b6000602082840312156114e557600080fd5b5035919050565b6000602082840312156114fe57600080fd5b81356115098161147d565b9392505050565b6000806040838503121561152357600080fd5b8235915060208301356115358161147d565b809150509250929050565b6000806040838503121561155357600080fd5b50508035926020909101359150565b60008060006040848603121561157757600080fd5b833567ffffffffffffffff81111561158e57600080fd5b8401601f8101861361159f57600080fd5b803567ffffffffffffffff8111156115b657600080fd5b8660208260051b84010111156115cb57600080fd5b6020918201945092508401356115e08161147d565b809150509250925092565b634e487b7160e01b600052601160045260246000fd5b818103818111156105da576105da6115eb565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561163c57600080fd5b81516115098161147d565b6000606082840312801561165a57600080fd5b506040516000906060810167ffffffffffffffff8111828210171561168d57634e487b7160e01b83526041600452602483fd5b604090815284518252602080860151908301529384015193810193909352509092915050565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116db57600080fd5b5051919050565b600060408284031280156116f557600080fd5b5060408051600091810167ffffffffffffffff8111828210171561172757634e487b7160e01b83526041600452602483fd5b6040528351815260209384015193810193909352509092915050565b80820281158282048414176105da576105da6115eb565b60008261177757634e487b7160e01b600052601260045260246000fd5b50049056fecd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300a264697066735822122042f0404e20d2cd9bf64cc69461f090305158b75c4ba645fc6d34baf461dd1e0464736f6c634300081c0033