0 txs
558 calls
constructor
No constructor.
functions
calcTransactionVolume
viewfunction calcTransactionVolume() view returns (uint256)
calculatePoolA
viewfunction calculatePoolA() view returns (uint256 poolA)
calculatePoolB
viewfunction calculatePoolB() view returns (uint256 poolB)
calculateSTLPool
viewfunction calculateSTLPool() view returns (uint256 stlPool)
getPoolAMatic
viewfunction getPoolAMatic() view returns (uint256)
getPoolBMatic
viewfunction getPoolBMatic() view returns (uint256)
getSTLPoolMatic
viewfunction getSTLPoolMatic() view returns (uint256)
owner
viewfunction owner() view returns (address)
POOL_A_FACTOR
viewfunction POOL_A_FACTOR() view returns (uint256)
POOL_B_FACTOR
viewfunction POOL_B_FACTOR() view returns (uint256)
poolATaken
viewfunction poolATaken() view returns (uint256 poolA)
STL_FEE_FACTOR
viewfunction STL_FEE_FACTOR() view returns (uint256)
initialize
nonpayablefunction initialize(address initialOwner, address wethContract, address lootNftContract)
renounceOwnership
nonpayablefunction renounceOwnership()
setSmartCatMintFeePool
nonpayablefunction setSmartCatMintFeePool(address mintFeePool)
takePoolA
nonpayablefunction takePoolA(address recipient, uint256 poolAContribution, uint256 supply)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw(address erc20Addr)
withdrawPoolB
nonpayablefunction withdrawPoolB()
withdrawSTL
nonpayablefunction withdrawSTL()
events
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SmartCatMintFeePoolUpdated
event SmartCatMintFeePoolUpdated(address newAddress)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
AddressInsufficientBalance
error AddressInsufficientBalance(address account)
FailedInnerCall
error FailedInnerCall()
InvalidInitialization
error InvalidInitialization()
NonZeroBalanceRequired
error NonZeroBalanceRequired()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
WethNotAllowed
error WethNotAllowed()
creation bytecode
0x608060405234801561001057600080fd5b50611285806100206000396000f3fe6080604052600436106101235760003560e01c806368cf6881116100a0578063a3b5a1dc11610064578063a3b5a1dc146102af578063b80880cf146102c4578063c0c53b8b146102da578063e34e0e63146102fa578063f2fde38b1461031a57600080fd5b806368cf6881146102235780636de82a55146102385780636ed7e4301461024d578063715018a61461026d5780638da5cb5b1461028257600080fd5b806352a98218116100e757806352a98218146101b95780635614eb3c146101ce57806356224625146101e3578063619865e7146101f8578063667d70681461020d57600080fd5b806315abdcbe1461012f5780633809e36214610146578063447ccf601461016e57806351cff8d914610184578063521a56fe146101a457600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5061014461033a565b005b34801561015257600080fd5b5061015b61052a565b6040519081526020015b60405180910390f35b34801561017a57600080fd5b5061015b61c35081565b34801561019057600080fd5b5061014461019f3660046110d3565b6105c7565b3480156101b057600080fd5b5061014461069c565b3480156101c557600080fd5b5061015b610827565b3480156101da57600080fd5b5061015b6108b6565b3480156101ef57600080fd5b5061015b6108d8565b34801561020457600080fd5b5061015b610913565b34801561021957600080fd5b5061015b619c4081565b34801561022f57600080fd5b5061015b610930565b34801561024457600080fd5b5060035461015b565b34801561025957600080fd5b506101446102683660046110d3565b6109ac565b34801561027957600080fd5b50610144610a08565b34801561028e57600080fd5b50610297610a1c565b6040516001600160a01b039091168152602001610165565b3480156102bb57600080fd5b5061015b610a4a565b3480156102d057600080fd5b5061015b61271081565b3480156102e657600080fd5b506101446102f53660046110f0565b610a67565b34801561030657600080fd5b5061014461031536600461113b565b610ba9565b34801561032657600080fd5b506101446103353660046110d3565b610d5c565b610342610d9a565b600061034c6108d8565b905080600860008282546103609190611186565b909155505080156103e7576000610375610a1c565b6001600160a01b03168260405160006040518083038185875af1925050503d80600081146103bf576040519150601f19603f3d011682016040523d82523d6000602084013e6103c4565b606091505b50509050806103e55781600860008282546103df9190611199565b90915550505b505b60006005546103ff6103f7610827565b619c40610dcc565b6104099190611199565b905080156104b4576001546001600160a01b031663a9059cbb61042a610a1c565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610477573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061049b91906111ac565b5080600560008282546104ae9190611186565b90915550505b6002546001600160a01b0316635fa55e406104cd610a1c565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b15801561050e57600080fd5b505af1158015610522573d6000803e3d6000fd5b505050505050565b60025460408051631c04f1b160e11b815290516000926001600160a01b031691633809e3629160048083019260209291908290030181865afa158015610574573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059891906111ce565b6004546105ae6105a6610827565b612710610dcc565b6105b89190611199565b6105c29190611186565b905090565b6105cf610d9a565b6001546001600160a01b03908116908216036105fe5760405163f4bea5db60e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610645573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066991906111ce565b90508060000361068c576040516358df221560e01b815260040160405180910390fd5b61069882303384610ded565b5050565b6106a4610d9a565b60006106ae610913565b905080600760008282546106c29190611186565b909155505080156107495760006106d7610a1c565b6001600160a01b03168260405160006040518083038185875af1925050503d8060008114610721576040519150601f19603f3d011682016040523d82523d6000602084013e610726565b606091505b50509050806107475781600760008282546107419190611199565b90915550505b505b60006004546107596105a6610827565b6107639190611199565b9050801561080e576001546001600160a01b031663a9059cbb610784610a1c565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af11580156107d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f591906111ac565b5080600460008282546108089190611186565b90915550505b6002546001600160a01b03166376d95f116104cd610a1c565b600480546003546005546001546040516370a0823160e01b815230958101959095526000946001600160a01b03909116906370a0823190602401602060405180830381865afa15801561087e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a291906111ce565b6108ac9190611186565b6105b89190611186565b60006003546108ce6108c6610827565b61c350610dcc565b6105c29190611199565b6000600854620186a0619c40600754600654476108f59190611186565b6108ff9190611186565b61090991906111e7565b6108ce91906111fe565b6000600754620186a0612710600854600654476108f59190611186565b600254604080516368cf688160e01b815290516000926001600160a01b0316916368cf68819160048083019260209291908290030181865afa15801561097a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099e91906111ce565b6005546105ae6103f7610827565b6109b4610d9a565b600280546001600160a01b0319166001600160a01b0383169081179091556040519081527f2bb90b818a31e2495f63a284be4e19f6c982293287ce6ad90713cec68e42722d9060200160405180910390a150565b610a10610d9a565b610a1a6000610e4d565b565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6000600654620186a061c350600854600754476108f59190611186565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610aad5750825b905060008267ffffffffffffffff166001148015610aca5750303b155b905081158015610ad8575080155b15610af65760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610b2057845460ff60401b1916600160401b1785555b600080546001600160a01b038089166001600160a01b03199283161790925560018054928a1692909116919091179055610b5988610ebe565b8315610b9f57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b6000546001600160a01b03163314610c265760405162461bcd60e51b815260206004820152603560248201527f536d6172744361744c6f6f74506f6f6c3a2063616c6c6572206973206e6f74206044820152741d1a1948131bdbdd081391950818dbdb9d1c9858dd605a1b60648201526084015b60405180910390fd5b60015460405163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529091169063a9059cbb906044016020604051808303816000875af1158015610c79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9d91906111ac565b508160036000828254610cb09190611186565b909155506000905081610cc1610a4a565b610ccb91906111fe565b90508060066000828254610cdf9190611186565b90915550506040516000906001600160a01b0386169083908381818185875af1925050503d8060008114610d2f576040519150601f19603f3d011682016040523d82523d6000602084013e610d34565b606091505b5050905080610d55578160066000828254610d4f9190611199565b90915550505b5050505050565b610d64610d9a565b6001600160a01b038116610d8e57604051631e4fbdf760e01b815260006004820152602401610c1d565b610d9781610e4d565b50565b33610da3610a1c565b6001600160a01b031614610a1a5760405163118cdaa760e01b8152336004820152602401610c1d565b6000620186a0610ddc83856111e7565b610de691906111fe565b9392505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610e47908590610ecf565b50505050565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b610ec6610f37565b610d9781610f80565b6000610ee46001600160a01b03841683610f88565b90508051600014158015610f09575080806020019051810190610f0791906111ac565b155b15610f3257604051635274afe760e01b81526001600160a01b0384166004820152602401610c1d565b505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16610a1a57604051631afcd79f60e31b815260040160405180910390fd5b610d64610f37565b6060610de683836000610f9c565b92915050565b606081471015610fc15760405163cd78605960e01b8152306004820152602401610c1d565b600080856001600160a01b03168486604051610fdd9190611220565b60006040518083038185875af1925050503d806000811461101a576040519150601f19603f3d011682016040523d82523d6000602084013e61101f565b606091505b509150915061102f868383611039565b9695505050505050565b60608261104e5761104982611095565b610de6565b815115801561106557506001600160a01b0384163b155b1561108e57604051639996b31560e01b81526001600160a01b0385166004820152602401610c1d565b5080610de6565b8051156110a55780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160a01b0381168114610d9757600080fd5b6000602082840312156110e557600080fd5b8135610de6816110be565b60008060006060848603121561110557600080fd5b8335611110816110be565b92506020840135611120816110be565b91506040840135611130816110be565b809150509250925092565b60008060006060848603121561115057600080fd5b833561115b816110be565b95602085013595506040909401359392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610f9657610f96611170565b81810381811115610f9657610f96611170565b6000602082840312156111be57600080fd5b81518015158114610de657600080fd5b6000602082840312156111e057600080fd5b5051919050565b8082028115828204841417610f9657610f96611170565b60008261121b57634e487b7160e01b600052601260045260246000fd5b500490565b6000825160005b818110156112415760208186018101518583015201611227565b50600092019182525091905056fea264697066735822122086a718db5f4c6b0efc5e34e80490a50f9de1196279fa8172a08db5d92d1b175f64736f6c63430008140033