[ { "name": "Transfer", "inputs": [ { "name": "sender", "type": "address", "indexed": true }, { "name": "receiver", "type": "address", "indexed": true }, { "name": "value", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "Approval", "inputs": [ { "name": "owner", "type": "address", "indexed": true }, { "name": "spender", "type": "address", "indexed": true }, { "name": "value", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "TokenExchange", "inputs": [ { "name": "buyer", "type": "address", "indexed": true }, { "name": "sold_id", "type": "uint256", "indexed": false }, { "name": "tokens_sold", "type": "uint256", "indexed": false }, { "name": "bought_id", "type": "uint256", "indexed": false }, { "name": "tokens_bought", "type": "uint256", "indexed": false }, { "name": "fee", "type": "uint256", "indexed": false }, { "name": "packed_price_scale", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "AddLiquidity", "inputs": [ { "name": "provider", "type": "address", "indexed": true }, { "name": "token_amounts", "type": "uint256[3]", "indexed": false }, { "name": "fee", "type": "uint256", "indexed": false }, { "name": "token_supply", "type": "uint256", "indexed": false }, { "name": "packed_price_scale", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "RemoveLiquidity", "inputs": [ { "name": "provider", "type": "address", "indexed": true }, { "name": "token_amounts", "type": "uint256[3]", "indexed": false }, { "name": "token_supply", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "RemoveLiquidityOne", "inputs": [ { "name": "provider", "type": "address", "indexed": true }, { "name": "token_amount", "type": "uint256", "indexed": false }, { "name": "coin_index", "type": "uint256", "indexed": false }, { "name": "coin_amount", "type": "uint256", "indexed": false }, { "name": "approx_fee", "type": "uint256", "indexed": false }, { "name": "packed_price_scale", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "CommitNewParameters", "inputs": [ { "name": "deadline", "type": "uint256", "indexed": true }, { "name": "mid_fee", "type": "uint256", "indexed": false }, { "name": "out_fee", "type": "uint256", "indexed": false }, { "name": "fee_gamma", "type": "uint256", "indexed": false }, { "name": "allowed_extra_profit", "type": "uint256", "indexed": false }, { "name": "adjustment_step", "type": "uint256", "indexed": false }, { "name": "ma_time", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "NewParameters", "inputs": [ { "name": "mid_fee", "type": "uint256", "indexed": false }, { "name": "out_fee", "type": "uint256", "indexed": false }, { "name": "fee_gamma", "type": "uint256", "indexed": false }, { "name": "allowed_extra_profit", "type": "uint256", "indexed": false }, { "name": "adjustment_step", "type": "uint256", "indexed": false }, { "name": "ma_time", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "RampAgamma", "inputs": [ { "name": "initial_A", "type": "uint256", "indexed": false }, { "name": "future_A", "type": "uint256", "indexed": false }, { "name": "initial_gamma", "type": "uint256", "indexed": false }, { "name": "future_gamma", "type": "uint256", "indexed": false }, { "name": "initial_time", "type": "uint256", "indexed": false }, { "name": "future_time", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "StopRampA", "inputs": [ { "name": "current_A", "type": "uint256", "indexed": false }, { "name": "current_gamma", "type": "uint256", "indexed": false }, { "name": "time", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "name": "ClaimAdminFee", "inputs": [ { "name": "admin", "type": "address", "indexed": true }, { "name": "tokens", "type": "uint256", "indexed": false } ], "anonymous": false, "type": "event" }, { "stateMutability": "nonpayable", "type": "constructor", "inputs": [ { "name": "_name", "type": "string" }, { "name": "_symbol", "type": "string" }, { "name": "_coins", "type": "address[3]" }, { "name": "_math", "type": "address" }, { "name": "_weth", "type": "address" }, { "name": "_salt", "type": "bytes32" }, { "name": "packed_precisions", "type": "uint256" }, { "name": "packed_A_gamma", "type": "uint256" }, { "name": "packed_fee_params", "type": "uint256" }, { "name": "packed_rebalancing_params", "type": "uint256" }, { "name": "packed_prices", "type": "uint256" } ], "outputs": [] }, { "stateMutability": "payable", "type": "fallback" }, { "stateMutability": "payable", "type": "function", "name": "exchange", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" }, { "name": "min_dy", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "exchange", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" }, { "name": "min_dy", "type": "uint256" }, { "name": "use_eth", "type": "bool" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "exchange", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" }, { "name": "min_dy", "type": "uint256" }, { "name": "use_eth", "type": "bool" }, { "name": "receiver", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "exchange_underlying", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" }, { "name": "min_dy", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "exchange_underlying", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" }, { "name": "min_dy", "type": "uint256" }, { "name": "receiver", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "exchange_extended", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" }, { "name": "min_dy", "type": "uint256" }, { "name": "use_eth", "type": "bool" }, { "name": "sender", "type": "address" }, { "name": "receiver", "type": "address" }, { "name": "cb", "type": "bytes32" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "add_liquidity", "inputs": [ { "name": "amounts", "type": "uint256[3]" }, { "name": "min_mint_amount", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "add_liquidity", "inputs": [ { "name": "amounts", "type": "uint256[3]" }, { "name": "min_mint_amount", "type": "uint256" }, { "name": "use_eth", "type": "bool" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "payable", "type": "function", "name": "add_liquidity", "inputs": [ { "name": "amounts", "type": "uint256[3]" }, { "name": "min_mint_amount", "type": "uint256" }, { "name": "use_eth", "type": "bool" }, { "name": "receiver", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity", "inputs": [ { "name": "_amount", "type": "uint256" }, { "name": "min_amounts", "type": "uint256[3]" } ], "outputs": [ { "name": "", "type": "uint256[3]" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity", "inputs": [ { "name": "_amount", "type": "uint256" }, { "name": "min_amounts", "type": "uint256[3]" }, { "name": "use_eth", "type": "bool" } ], "outputs": [ { "name": "", "type": "uint256[3]" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity", "inputs": [ { "name": "_amount", "type": "uint256" }, { "name": "min_amounts", "type": "uint256[3]" }, { "name": "use_eth", "type": "bool" }, { "name": "receiver", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256[3]" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity", "inputs": [ { "name": "_amount", "type": "uint256" }, { "name": "min_amounts", "type": "uint256[3]" }, { "name": "use_eth", "type": "bool" }, { "name": "receiver", "type": "address" }, { "name": "claim_admin_fees", "type": "bool" } ], "outputs": [ { "name": "", "type": "uint256[3]" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity_one_coin", "inputs": [ { "name": "token_amount", "type": "uint256" }, { "name": "i", "type": "uint256" }, { "name": "min_amount", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity_one_coin", "inputs": [ { "name": "token_amount", "type": "uint256" }, { "name": "i", "type": "uint256" }, { "name": "min_amount", "type": "uint256" }, { "name": "use_eth", "type": "bool" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "remove_liquidity_one_coin", "inputs": [ { "name": "token_amount", "type": "uint256" }, { "name": "i", "type": "uint256" }, { "name": "min_amount", "type": "uint256" }, { "name": "use_eth", "type": "bool" }, { "name": "receiver", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "claim_admin_fees", "inputs": [], "outputs": [] }, { "stateMutability": "nonpayable", "type": "function", "name": "transferFrom", "inputs": [ { "name": "_from", "type": "address" }, { "name": "_to", "type": "address" }, { "name": "_value", "type": "uint256" } ], "outputs": [ { "name": "", "type": "bool" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "transfer", "inputs": [ { "name": "_to", "type": "address" }, { "name": "_value", "type": "uint256" } ], "outputs": [ { "name": "", "type": "bool" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "approve", "inputs": [ { "name": "_spender", "type": "address" }, { "name": "_value", "type": "uint256" } ], "outputs": [ { "name": "", "type": "bool" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "increaseAllowance", "inputs": [ { "name": "_spender", "type": "address" }, { "name": "_add_value", "type": "uint256" } ], "outputs": [ { "name": "", "type": "bool" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "decreaseAllowance", "inputs": [ { "name": "_spender", "type": "address" }, { "name": "_sub_value", "type": "uint256" } ], "outputs": [ { "name": "", "type": "bool" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "permit", "inputs": [ { "name": "_owner", "type": "address" }, { "name": "_spender", "type": "address" }, { "name": "_value", "type": "uint256" }, { "name": "_deadline", "type": "uint256" }, { "name": "_v", "type": "uint8" }, { "name": "_r", "type": "bytes32" }, { "name": "_s", "type": "bytes32" } ], "outputs": [ { "name": "", "type": "bool" } ] }, { "stateMutability": "view", "type": "function", "name": "fee_receiver", "inputs": [], "outputs": [ { "name": "", "type": "address" } ] }, { "stateMutability": "view", "type": "function", "name": "calc_token_amount", "inputs": [ { "name": "amounts", "type": "uint256[3]" }, { "name": "deposit", "type": "bool" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "get_dy", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dx", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "get_dx", "inputs": [ { "name": "i", "type": "uint256" }, { "name": "j", "type": "uint256" }, { "name": "dy", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "lp_price", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "get_virtual_price", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "price_oracle", "inputs": [ { "name": "k", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "last_prices", "inputs": [ { "name": "k", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "price_scale", "inputs": [ { "name": "k", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "fee", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "calc_withdraw_one_coin", "inputs": [ { "name": "token_amount", "type": "uint256" }, { "name": "i", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "calc_token_fee", "inputs": [ { "name": "amounts", "type": "uint256[3]" }, { "name": "xp", "type": "uint256[3]" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "A", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "gamma", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "mid_fee", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "out_fee", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "fee_gamma", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "allowed_extra_profit", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "adjustment_step", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "ma_time", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "precisions", "inputs": [], "outputs": [ { "name": "", "type": "uint256[3]" } ] }, { "stateMutability": "view", "type": "function", "name": "fee_calc", "inputs": [ { "name": "xp", "type": "uint256[3]" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "DOMAIN_SEPARATOR", "inputs": [], "outputs": [ { "name": "", "type": "bytes32" } ] }, { "stateMutability": "nonpayable", "type": "function", "name": "ramp_A_gamma", "inputs": [ { "name": "future_A", "type": "uint256" }, { "name": "future_gamma", "type": "uint256" }, { "name": "future_time", "type": "uint256" } ], "outputs": [] }, { "stateMutability": "nonpayable", "type": "function", "name": "stop_ramp_A_gamma", "inputs": [], "outputs": [] }, { "stateMutability": "nonpayable", "type": "function", "name": "commit_new_parameters", "inputs": [ { "name": "_new_mid_fee", "type": "uint256" }, { "name": "_new_out_fee", "type": "uint256" }, { "name": "_new_fee_gamma", "type": "uint256" }, { "name": "_new_allowed_extra_profit", "type": "uint256" }, { "name": "_new_adjustment_step", "type": "uint256" }, { "name": "_new_ma_time", "type": "uint256" } ], "outputs": [] }, { "stateMutability": "nonpayable", "type": "function", "name": "apply_new_parameters", "inputs": [], "outputs": [] }, { "stateMutability": "nonpayable", "type": "function", "name": "revert_new_parameters", "inputs": [], "outputs": [] }, { "stateMutability": "view", "type": "function", "name": "WETH20", "inputs": [], "outputs": [ { "name": "", "type": "address" } ] }, { "stateMutability": "view", "type": "function", "name": "MATH", "inputs": [], "outputs": [ { "name": "", "type": "address" } ] }, { "stateMutability": "view", "type": "function", "name": "coins", "inputs": [ { "name": "arg0", "type": "uint256" } ], "outputs": [ { "name": "", "type": "address" } ] }, { "stateMutability": "view", "type": "function", "name": "factory", "inputs": [], "outputs": [ { "name": "", "type": "address" } ] }, { "stateMutability": "view", "type": "function", "name": "last_prices_timestamp", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "initial_A_gamma", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "initial_A_gamma_time", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "future_A_gamma", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "future_A_gamma_time", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "balances", "inputs": [ { "name": "arg0", "type": "uint256" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "D", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "xcp_profit", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "xcp_profit_a", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "virtual_price", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "packed_rebalancing_params", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "packed_fee_params", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "ADMIN_FEE", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "admin_actions_deadline", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "name", "inputs": [], "outputs": [ { "name": "", "type": "string" } ] }, { "stateMutability": "view", "type": "function", "name": "symbol", "inputs": [], "outputs": [ { "name": "", "type": "string" } ] }, { "stateMutability": "view", "type": "function", "name": "decimals", "inputs": [], "outputs": [ { "name": "", "type": "uint8" } ] }, { "stateMutability": "view", "type": "function", "name": "version", "inputs": [], "outputs": [ { "name": "", "type": "string" } ] }, { "stateMutability": "view", "type": "function", "name": "balanceOf", "inputs": [ { "name": "arg0", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "allowance", "inputs": [ { "name": "arg0", "type": "address" }, { "name": "arg1", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "totalSupply", "inputs": [], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "nonces", "inputs": [ { "name": "arg0", "type": "address" } ], "outputs": [ { "name": "", "type": "uint256" } ] }, { "stateMutability": "view", "type": "function", "name": "salt", "inputs": [], "outputs": [ { "name": "", "type": "bytes32" } ] } ]