4k txs
5.6k calls
constructor
constructor(address _factory, address _formula, uint32 _weight)
functions
factory
viewfunction factory() view returns (address)
formula
viewfunction formula() view returns (address)
getAmountOutBuy
viewfunction getAmountOutBuy(address token, uint256 amount) view returns (uint256)
getAmountOutBuySupplyCapped
viewfunction getAmountOutBuySupplyCapped(address token, uint256 amount) view returns (uint256)
getAmountOutSell
viewfunction getAmountOutSell(address token, uint256 amount) view returns (uint256)
MAX_FEE
viewfunction MAX_FEE() view returns (uint256)
reserveWeight
viewfunction reserveWeight() view returns (uint32)
txFee
viewfunction txFee() view returns (uint256)
buy
payablefunction buy(address token, uint256 expectedOut) payable returns (uint256)
sell
nonpayablefunction sell(address token, uint256 amount, uint256 expectedOut) returns (uint256)
setTxFee
nonpayablefunction setTxFee(uint256 _fee)
withdraw
nonpayablefunction withdraw(uint256 amount)
events
Buy
event Buy(address indexed user, address indexed token, uint256 amount, uint256 amountOut, uint256 totalSupply, uint256 marketCap, uint256 price, uint256 reserveBalance)
LPSeeded
event LPSeeded(address indexed token, address indexed pool)
Sell
event Sell(address indexed user, address indexed token, uint256 amount, uint256 amountOut, uint256 totalSupply, uint256 marketCap, uint256 price, uint256 reserveBalance)
TxFeeUpdated
event TxFeeUpdated(uint256 fee)
errors
FailedToSendETH
error FailedToSendETH()
InvalidAmount
error InvalidAmount()
InvalidBalanceInvariant
error InvalidBalanceInvariant()
InvalidCaller
error InvalidCaller()
InvalidToken
error InvalidToken()
MaxFeeExceeded
error MaxFeeExceeded(uint256 maxFee)
ProtocolPaused
error ProtocolPaused()
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
SlippageTooHigh
error SlippageTooHigh()
creation bytecode
0x60e06040523480156200001157600080fd5b50604051620019f4380380620019f4833981016040819052620000349162000078565b60016000556001600160a01b0392831660a052911660805263ffffffff1660c052620000ce565b80516001600160a01b03811681146200007357600080fd5b919050565b6000806000606084860312156200008e57600080fd5b62000099846200005b565b9250620000a9602085016200005b565b9150604084015163ffffffff81168114620000c357600080fd5b809150509250925092565b60805160a05160c0516118a3620001516000396000818160b90152818161045601528181610d7901526113640152600081816101ee015281816105690152818161067301528181610a81015281816114f101526115890152600081816101770152818161028b015281816104f201528181610c7c01526111fb01526118a36000f3fe60806040526004361061009b5760003560e01c8063104b0257146100a757806329e0fc13146100f55780632d8dfc9f146101235780632e1a7d4d146101435780634b75f54f146101655780636a272462146101a6578063bc063e1a146101c6578063c45a0155146101dc578063cce7ec1314610210578063cf82046114610223578063d17b01e814610239578063f05d16f71461025957600080fd5b366100a257005b600080fd5b3480156100b357600080fd5b506100db7f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff90911681526020015b60405180910390f35b34801561010157600080fd5b506101156101103660046116a8565b610279565b6040519081526020016100ec565b34801561012f57600080fd5b5061011561013e3660046116a8565b6104e0565b34801561014f57600080fd5b5061016361015e3660046116d4565b61055d565b005b34801561017157600080fd5b506101997f000000000000000000000000000000000000000000000000000000000000000081565b6040516100ec91906116ed565b3480156101b257600080fd5b506101156101c1366004611701565b61065e565b3480156101d257600080fd5b506101156101f481565b3480156101e857600080fd5b506101997f000000000000000000000000000000000000000000000000000000000000000081565b61011561021e3660046116a8565b610a6c565b34801561022f57600080fd5b5061011560015481565b34801561024557600080fd5b506101156102543660046116a8565b611181565b34801561026557600080fd5b506101636102743660046116d4565b61146c565b6000610284836114da565b60008390507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f3250fe2826001600160a01b0316632ff2e9dc6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031a9190611736565b836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610358573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037c9190611736565b846001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103de9190611736565b6103e89190611765565b6103f29190611778565b836001600160a01b031663a10954fe6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610430573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104549190611736565b7f0000000000000000000000000000000000000000000000000000000000000000876040518563ffffffff1660e01b8152600401610495949392919061178b565b602060405180830381865afa1580156104b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d69190611736565b9150505b92915050565b60006104eb836114da565b60008390507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166376cf0b56826001600160a01b0316632ff2e9dc6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102f6573d6000803e3d6000fd5b610565611587565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e991906117ac565b6001600160a01b03168260405160006040518083038185875af1925050503d8060008114610633576040519150601f19603f3d011682016040523d82523d6000602084013e610638565b606091505b505090508061065a576040516338822c1360e11b815260040160405180910390fd5b5050565b600061066861163c565b610671846114da565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379d67a336040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f391906117c9565b1561071157604051634427925560e01b815260040160405180910390fd5b826000036107325760405163162908e360e11b815260040160405180910390fd5b47600061073f86866104e0565b9050858115806107af5750806001600160a01b031663edaf2d2e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610788573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ac9190611736565b82115b156107cd5760405163162908e360e11b815260040160405180910390fd5b60006107e26107dd846001611778565b611666565b9050856107ef8285611765565b101561080e5760405163428637bb60e11b815260040160405180910390fd5b604051633d2a0b1d60e11b81526001600160a01b03831690637a54163a9061083e9033908b9088906004016117eb565b600060405180830381600087803b15801561085857600080fd5b505af115801561086c573d6000803e3d6000fd5b506000925033915061088090508386611765565b604051600081818185875af1925050503d80600081146108bc576040519150601f19603f3d011682016040523d82523d6000602084013e6108c1565b606091505b50509050806108e3576040516338822c1360e11b815260040160405180910390fd5b60006108f78a670de0b6b3a76400006104e0565b90506000846001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095d9190611736565b90506001600160a01b038b16337f594898f0701a8fbcf3e869135bc2a2d8194e98a46765b1f6ef41138fe049ebb88c610996888b611765565b856109a1818961180c565b888c6001600160a01b031663a10954fe6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a049190611736565b604051610a1696959493929190611823565b60405180910390a3610a288488611778565b471015610a485760405163c97978fd60e01b815260040160405180910390fd5b610a528487611765565b975050505050505050610a656001600055565b9392505050565b6000610a7661163c565b610a7f836114da565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379d67a336040518163ffffffff1660e01b8152600401602060405180830381865afa158015610add573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b0191906117c9565b15610b1f57604051634427925560e01b815260040160405180910390fd5b34600003610b405760405163162908e360e11b815260040160405180910390fd5b6000610b4c3447611765565b90506000610b5934611666565b90506000610b678234611765565b90506000610b758783610279565b905080600003610b985760405163162908e360e11b815260040160405180910390fd5b60008790506000816001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bdd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c019190611736565b826001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c3f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c639190611736565b610c6d9190611765565b905080831115610e83578092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635f28fdfc836001600160a01b0316632ff2e9dc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ce7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0b9190611736565b610d159084611778565b846001600160a01b031663a10954fe6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d779190611736565b7f0000000000000000000000000000000000000000000000000000000000000000876040518563ffffffff1660e01b8152600401610db8949392919061178b565b602060405180830381865afa158015610dd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df99190611736565b9350610e0484611666565b945060003386610e148734611765565b610e1e9190611765565b604051600081818185875af1925050503d8060008114610e5a576040519150601f19603f3d011682016040523d82523d6000602084013e610e5f565b606091505b5050905080610e81576040516338822c1360e11b815260040160405180910390fd5b505b87831015610ea45760405163428637bb60e11b815260040160405180910390fd5b604051630ab714fb60e11b81526001600160a01b0383169063156e29f6908690610ed6903390889084906004016117eb565b6000604051808303818588803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b50505050506000610f1c8a670de0b6b3a76400006104e0565b90506000836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f829190611736565b90506001600160a01b038b16337f30df0cd28c6e48e6fe24bcab9f36b5052aef24c98ba64b6ef2ba66b659e9a29e888885610fbd818961180c565b888b6001600160a01b031663a10954fe6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ffc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110209190611736565b60405161103296959493929190611823565b60405180910390a3836001600160a01b0316639b164e336040518163ffffffff1660e01b8152600401602060405180830381865afa158015611078573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109c91906117c9565b1561114357836001600160a01b031663313c06a06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110df573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110391906117ac565b6001600160a01b03168b6001600160a01b03167fc645485808bb2abc9dd9463de6ef02a3c868f098076dd818e254d67943cdf8be60405160405180910390a35b61114d8789611778565b47101561116d5760405163c97978fd60e01b815260040160405180910390fd5b509296505050505050506104da6001600055565b600061118c836114da565b60008390506000816001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f59190611736565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f3250fe2846001600160a01b0316632ff2e9dc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611266573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128a9190611736565b856001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ec9190611736565b6112f69086611765565b6113009190611778565b856001600160a01b031663a10954fe6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561133e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113629190611736565b7f0000000000000000000000000000000000000000000000000000000000000000896040518563ffffffff1660e01b81526004016113a3949392919061178b565b602060405180830381865afa1580156113c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113e49190611736565b90506000836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611426573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061144a9190611736565b6114549084611765565b905080821115611462578091505b5095945050505050565b611474611587565b6101f481111561149f57604051630bf4b76f60e41b81526101f4600482015260240160405180910390fd5b60018190556040518181527fbd2109a09bf23e83f9a73a7633a62f197ed35ca92475cbb9aa781b2dab531eea9060200160405180910390a150565b604051637139829b60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e2730536906115269084906004016116ed565b602060405180830381865afa158015611543573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061156791906117c9565b6115845760405163c1ab6dc160e01b815260040160405180910390fd5b50565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906117ac565b6001600160a01b0316336001600160a01b03161461163a576040516348f5c3ed60e01b815260040160405180910390fd5b565b60026000540361165f57604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b600080600154116116785760006104da565b61271060015483611689919061180c565b6104da919061184b565b6001600160a01b038116811461158457600080fd5b600080604083850312156116bb57600080fd5b82356116c681611693565b946020939093013593505050565b6000602082840312156116e657600080fd5b5035919050565b6001600160a01b0391909116815260200190565b60008060006060848603121561171657600080fd5b833561172181611693565b95602085013595506040909401359392505050565b60006020828403121561174857600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156104da576104da61174f565b808201808211156104da576104da61174f565b938452602084019290925263ffffffff166040830152606082015260800190565b6000602082840312156117be57600080fd5b8151610a6581611693565b6000602082840312156117db57600080fd5b81518015158114610a6557600080fd5b6001600160a01b039390931683526020830191909152604082015260600190565b80820281158282048414176104da576104da61174f565b958652602086019490945260408501929092526060840152608083015260a082015260c00190565b60008261186857634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122066a79a79135e8f12791e1e296d2cc06751084e932a1219546b926e465bfb92d564736f6c634300081400330000000000000000000000004b76208fdc0eeafa8635021b3bf1cd692a9b8b14000000000000000000000000446a59d52e1ad2b2308538d050b8dc183931f72d00000000000000000000000000000000000000000000000000000000000186a0