0 txs
0 calls
constructor
No constructor.
functions
CURVE_UNIT
viewfunction CURVE_UNIT() view returns (uint256)
findBestProportion
viewfunction findBestProportion(address curvePool, uint256 depositInToken0, uint256 epsilon) view returns (uint256)
findBestProportionNG
viewfunction findBestProportionNG(address curvePool, uint256 depositInToken0, uint256 epsilon) view returns (uint256)
INV_PHI
viewfunction INV_PHI() view returns (uint256)
MAX_ITERS
viewfunction MAX_ITERS() view returns (uint256)
previewNGUnitaryAddLiquidity
viewfunction previewNGUnitaryAddLiquidity(address curvePool, uint256 depositInToken0, uint256 proportion) view returns (uint256)
previewUnitaryAddLiquidity
viewfunction previewUnitaryAddLiquidity(address curvePool, uint256 depositInToken0, uint256 proportion) view returns (uint256)
PROP_MAX
viewfunction PROP_MAX() view returns (uint256)
PROP_MIN
viewfunction PROP_MIN() view returns (uint256)
events
No events.
errors
ConvergenceError
error ConvergenceError(uint256 propMin, uint256 propMax, uint256 epsilonTheory, uint256 epsilonActual)
MathOverflowedMulDiv
error MathOverflowedMulDiv()
creation bytecode
0x608060405234801561000f575f80fd5b50610a168061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610090575f3560e01c806381321f951161006357806381321f95146100eb5780639afc8dbc146100fe578063b9dc6bfa14610111578063f14dda6e14610119578063ff930a9e14610127575f80fd5b806303e370711461009457806355bf9990146100b95780636322c667146100cc57806378b9088d146100db575b5f80fd5b6100a76100a2366004610790565b610136565b60405190815260200160405180910390f35b6100a76100c7366004610790565b61033e565b6100a7670de0b6b3a764000081565b6100a768056bc75e2d6310000081565b6100a76100f9366004610790565b6104ba565b6100a761010c366004610790565b6105e6565b6100a760ff81565b6100a7662386f26fc1000081565b6100a7670893b2a3668e24c081565b5f806101b6670de0b6b3a7640000866001600160a01b031663c146bf946040518163ffffffff1660e01b8152600401602060405180830381865afa158015610180573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a491906107c2565b6101ae90866107ed565b8691906106ba565b90505f6101cc8285670de0b6b3a76400006106ba565b60405163c661065760e01b81525f600482018190529192506001600160a01b0388169063c661065790602401602060405180830381865afa158015610213573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102379190610806565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610272573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102969190610821565b6102a190600a610921565b90506103318187896001600160a01b031663ed8e84f360405180604001604052808881526020018981525060016040518363ffffffff1660e01b81526004016102eb929190610957565b602060405180830381865afa158015610306573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032a91906107c2565b91906106ba565b93505050505b9392505050565b5f80610388670de0b6b3a7640000866001600160a01b031663c146bf946040518163ffffffff1660e01b8152600401602060405180830381865afa158015610180573d5f803e3d5ffd5b90505f61039e8285670de0b6b3a76400006106ba565b60405163c661065760e01b81525f600482018190529192506001600160a01b0388169063c661065790602401602060405180830381865afa1580156103e5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104099190610806565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610444573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104689190610821565b61047390600a610921565b90506103318187896001600160a01b0316638d8ea7276040518060400160405280888152602001898152506040518263ffffffff1660e01b81526004016102eb9190610974565b5f662386f26fc1000068056bc75e2d6310000082808080805b886104de8888610982565b11156105c15760ff83111561052d5786868a6104fa8383610982565b604051631b024b2b60e21b8152600481019490945260248401929092526044830152606482015260840160405180910390fd5b61054c670893b2a3668e24c0670de0b6b3a764000061032a8a8a610982565b6105569087610982565b9450610577670893b2a3668e24c0670de0b6b3a764000061032a8a8a610982565b61058190886107ed565b935061058e8b8b8761033e565b915061059b8b8b8661033e565b9050808211156105ad578395506105b1565b8496505b6105ba83610995565b92506104d3565b60026105cd87896107ed565b6105d791906109c1565b9b9a5050505050505050505050565b5f662386f26fc1000068056bc75e2d6310000082808080805b8861060a8888610982565b11156105c15760ff8311156106265786868a6104fa8383610982565b610645670893b2a3668e24c0670de0b6b3a764000061032a8a8a610982565b61064f9087610982565b9450610670670893b2a3668e24c0670de0b6b3a764000061032a8a8a610982565b61067a90886107ed565b93506106878b8b87610136565b91506106948b8b86610136565b9050808211156106a6578395506106aa565b8496505b6106b383610995565b92506105ff565b5f838302815f1985870982811083820303915050805f036106ee578382816106e4576106e46109ad565b0492505050610337565b80841161070e5760405163227bc15360e01b815260040160405180910390fd5b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b6001600160a01b038116811461078d575f80fd5b50565b5f805f606084860312156107a2575f80fd5b83356107ad81610779565b95602085013595506040909401359392505050565b5f602082840312156107d2575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610800576108006107d9565b92915050565b5f60208284031215610816575f80fd5b815161033781610779565b5f60208284031215610831575f80fd5b815160ff81168114610337575f80fd5b600181815b8085111561087b57815f1904821115610861576108616107d9565b8085161561086e57918102915b93841c9390800290610846565b509250929050565b5f8261089157506001610800565b8161089d57505f610800565b81600181146108b357600281146108bd576108d9565b6001915050610800565b60ff8411156108ce576108ce6107d9565b50506001821b610800565b5060208310610133831016604e8410600b84101617156108fc575081810a610800565b6109068383610841565b805f1904821115610919576109196107d9565b029392505050565b5f61033760ff841683610883565b805f5b6002811015610951578151845260209384019390910190600101610932565b50505050565b60608101610965828561092f565b82151560408301529392505050565b60408101610800828461092f565b81810381811115610800576108006107d9565b5f600182016109a6576109a66107d9565b5060010190565b634e487b7160e01b5f52601260045260245ffd5b5f826109db57634e487b7160e01b5f52601260045260245ffd5b50049056fea26469706673582212206f4924b42d4fe938ef074ade3507f5813102ddbdc272e3df06b7f33a44b55dd564736f6c63430008140033