[
  "event AddLiquidity(address indexed,uint256[],uint256[],uint256,uint256)",
  "event Initialized(uint8)",
  "event NewAdminFee(uint256)",
  "event NewSwapFee(uint256)",
  "event NewWithdrawFee(uint256)",
  "event OwnershipTransferred(address indexed,address indexed)",
  "event Paused(address)",
  "event RampA(uint256,uint256,uint256,uint256)",
  "event RemoveLiquidity(address indexed,uint256[],uint256)",
  "event RemoveLiquidityImbalance(address indexed,uint256[],uint256[],uint256,uint256)",
  "event RemoveLiquidityOne(address indexed,uint256,uint256,uint256,uint256)",
  "event StopRampA(uint256,uint256)",
  "event SwapInitialized(tuple(uint256,uint256,uint256,uint256,uint256,uint256,address,address[],uint256[],uint256[],uint256[]),address)",
  "event TokenSwap(address indexed,uint256,uint256,uint128,uint128)",
  "event Unpaused(address)",
  "function addLiquidity(uint256[],uint256,uint256) returns (uint256)",
  "function calculateRemoveLiquidity(uint256) view returns (uint256[])",
  "function calculateRemoveLiquidityOneToken(uint256,uint8) view returns (uint256)",
  "function calculateSwap(uint8,uint8,uint256) view returns (uint256)",
  "function calculateSwapFromAddress(address,address,uint256) view returns (uint256)",
  "function calculateSwapOut(uint8,uint8,uint256) view returns (uint256)",
  "function calculateSwapOutFromAddress(address,address,uint256) view returns (uint256)",
  "function calculateTokenAmount(uint256[],bool) view returns (uint256)",
  "function getA() view returns (uint256)",
  "function getAPrecise() view returns (uint256)",
  "function getAdminBalance(uint256) view returns (uint256)",
  "function getToken(uint8) view returns (address)",
  "function getTokenBalance(uint8) view returns (uint256)",
  "function getTokenIndex(address) view returns (uint8)",
  "function getVirtualPrice() view returns (uint256)",
  "function initialize(address[],uint8[],string,string,uint256,uint256,uint256,address)",
  "function owner() view returns (address)",
  "function pause()",
  "function paused() view returns (bool)",
  "function rampA(uint256,uint256)",
  "function removeLiquidity(uint256,uint256[],uint256) returns (uint256[])",
  "function removeLiquidityImbalance(uint256[],uint256,uint256) returns (uint256)",
  "function removeLiquidityOneToken(uint256,uint8,uint256,uint256) returns (uint256)",
  "function renounceOwnership()",
  "function setAdminFee(uint256)",
  "function setSwapFee(uint256)",
  "function stopRampA()",
  "function swap(uint8,uint8,uint256,uint256,uint256) returns (uint256)",
  "function swapExact(uint256,address,address,uint256,uint256) payable returns (uint256)",
  "function swapExactOut(uint256,address,address,uint256,uint256) payable returns (uint256)",
  "function swapStorage() view returns (uint256, uint256, uint256, uint256, uint256, uint256, address)",
  "function transferOwnership(address)",
  "function unpause()",
  "function withdrawAdminFees()"
]
