0 txs
0 calls
constructor
constructor()
functions
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
profit
viewfunction profit(address token) view returns (uint256 balance)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
router
viewfunction router() view returns (address)
writeFees
viewfunction writeFees(address, uint256 amount) view returns (uint256 fee)
acceptOwnership
nonpayablefunction acceptOwnership()
collectProtocolFees
nonpayablefunction collectProtocolFees(address token, address recipient, uint256 amount)
initialize
nonpayablefunction initialize(address newOwner, address newRouter)
renounceOwnership
nonpayablefunction renounceOwnership()
setRouter
nonpayablefunction setRouter(address newRouter)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
events
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
Upgraded
event Upgraded(address indexed implementation)
errors
ERC1967_InvalidImplementation
error ERC1967_InvalidImplementation(address implementation)
FeeContract_InvalidFeeValue
error FeeContract_InvalidFeeValue()
FeeContract_InvalidSender
error FeeContract_InvalidSender(address sender)
InvalidInitialization
error InvalidInitialization()
NotInitializing
error NotInitializing()
Ownable_CallerIsNotTheNewOwner
error Ownable_CallerIsNotTheNewOwner(address caller)
Ownable_NewOwnerCannotBeAddressZero
error Ownable_NewOwnerCannotBeAddressZero()
Ownable_SenderIsNotOwner
error Ownable_SenderIsNotOwner(address sender)
TransferHelper_GetBalanceError
error TransferHelper_GetBalanceError()
TransferHelper_TransferError
error TransferHelper_TransferError()
UUPSUnauthorizedCallContext
error UUPSUnauthorizedCallContext()
UUPSUnsupportedProxiableUUID
error UUPSUnsupportedProxiableUUID(bytes32 slot)
creation bytecode
0x60a06040523060805234801561001457600080fd5b5061001d610022565b6100ab565b600154600160a81b900460ff161561004d5760405163f92ee8a960e01b815260040160405180910390fd5b600154600160a01b900460ff908116146100a9576001805460ff60a01b191660ff60a01b17905560405160ff81527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b608051610db86100d4600039600081816107650152818161078e01526109380152610db86000f3fe6080604052600436106100d65760003560e01c806379ba50971161007f578063c0d7865511610059578063c0d7865514610208578063e30c397814610228578063f2fde38b14610246578063f887ea401461026657600080fd5b806379ba5097146101a15780638161b874146101b65780638da5cb5b146101d657600080fd5b80634ecdaaf1116100b05780634ecdaaf11461015757806352d1902d14610177578063715018a61461018c57600080fd5b806302550e4d146100e25780633659cfe614610115578063485cc9551461013757600080fd5b366100dd57005b600080fd5b3480156100ee57600080fd5b506101026100fd366004610c20565b610284565b6040519081526020015b60405180910390f35b34801561012157600080fd5b50610135610130366004610c20565b610296565b005b34801561014357600080fd5b50610135610152366004610c44565b6102b3565b34801561016357600080fd5b50610102610172366004610c7d565b6103f5565b34801561018357600080fd5b506101026104d6565b34801561019857600080fd5b50610135610505565b3480156101ad57600080fd5b50610135610519565b3480156101c257600080fd5b506101356101d1366004610ca9565b610568565b3480156101e257600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161010c565b34801561021457600080fd5b50610135610223366004610c20565b6105a1565b34801561023457600080fd5b506001546001600160a01b03166101f0565b34801561025257600080fd5b50610135610261366004610c20565b6105cb565b34801561027257600080fd5b506004546001600160a01b03166101f0565b6000610290823061062d565b92915050565b61029e61075a565b6102a781610808565b6102b081610810565b50565b60015460ff600160a81b820481161591600160a01b9004166000811580156102d85750825b905060008267ffffffffffffffff1660011480156102f55750303b155b905081158015610303575080155b1561033a576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b1790558315610382576001805460ff60a81b1916600160a81b1790555b61038b86610914565b600480546001600160a01b0319166001600160a01b03871617905583156103ed576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6004546000906001600160a01b03163314610443576040517f153c26270000000000000000000000000000000000000000000000000000000081523360048201526024015b60405180910390fd5b6000600460009054906101000a90046001600160a01b03166001600160a01b031663748345426040518163ffffffff1660e01b81526004016040805180830381865afa158015610497573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bb9190610cea565b91505080156104cf57620f42408382020491505b5092915050565b60006104e061092d565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b61050d610976565b6105176000610914565b565b6001546001600160a01b0316331461055f576040517f6cce7fdd00000000000000000000000000000000000000000000000000000000815233600482015260240161043a565b61051733610914565b610570610976565b600061057c843061062d565b90508181101561058a578091505b811561059b5761059b8484846109bc565b50505050565b6105a9610976565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6105d3610976565b6105dc81610a76565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227009190a350565b604080516001600160a01b0383811660248084019190915283518084039091018152604490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f70a0823100000000000000000000000000000000000000000000000000000000179052915160009283928392918716916106b59190610d18565b600060405180830381855afa9150503d80600081146106f0576040519150601f19603f3d011682016040523d82523d6000602084013e6106f5565b606091505b509150915081158061070657508051155b1561073d576040517ff6d1729d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808060200190518101906107519190610d47565b95945050505050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806107ea57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166107de7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b031614155b156105175760405163703e46dd60e11b815260040160405180910390fd5b6102b0610976565b806001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561086a575060408051601f3d908101601f1916820190925261086791810190610d47565b60015b6108ab576040517f4a4a0aa20000000000000000000000000000000000000000000000000000000081526001600160a01b038216600482015260240161043a565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114610907576040517faa1d49a40000000000000000000000000000000000000000000000000000000081526004810182905260240161043a565b61091082610ab6565b5050565b600180546001600160a01b03191690556102b081610af6565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105175760405163703e46dd60e11b815260040160405180910390fd5b6000546001600160a01b03163314610517576040517f37c14b4500000000000000000000000000000000000000000000000000000000815233600482015260240161043a565b6040516001600160a01b038316602482015260448101829052610a3b90849060640160408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610b46565b610a71576040517fc63edbd000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b6001600160a01b0381166102b0576040517f7b30466f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610abf81610bcf565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000806000846001600160a01b031684604051610b639190610d18565b6000604051808303816000865af19150503d8060008114610ba0576040519150601f19603f3d011682016040523d82523d6000602084013e610ba5565b606091505b50915091508180156107515750805115806107515750808060200190518101906107519190610d60565b803b610be757634a4a0aa2600052806020526024601cfd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b6001600160a01b03811681146102b057600080fd5b600060208284031215610c3257600080fd5b8135610c3d81610c0b565b9392505050565b60008060408385031215610c5757600080fd5b8235610c6281610c0b565b91506020830135610c7281610c0b565b809150509250929050565b60008060408385031215610c9057600080fd5b8235610c9b81610c0b565b946020939093013593505050565b600080600060608486031215610cbe57600080fd5b8335610cc981610c0b565b92506020840135610cd981610c0b565b929592945050506040919091013590565b60008060408385031215610cfd57600080fd5b8251610d0881610c0b565b6020939093015192949293505050565b6000825160005b81811015610d395760208186018101518583015201610d1f565b506000920191825250919050565b600060208284031215610d5957600080fd5b5051919050565b600060208284031215610d7257600080fd5b81518015158114610c3d57600080fdfea264697066735822122032f4ef40cc1b38ccf0e6b699c67b4601c213505c5c4b0b67e68af4ae5cc224fb64736f6c63430008130033