Contract errors

This section contains selected, most frequently occurring errors the protocol may revert with.

Router

swap: EXPIRED

Thrown when the current block's timestamp is greater than the provided _deadline of a swap.

require(block.timestamp <= _deadline, "RC:_swapExactTokensForTokens:EXPIRED");

swap: BELOW_MINIMUM

Thrown when the minimum acceptable output amount _amountOutMin of a swap is not met.

require(amountOut >= _amountOutMin, "RC:_swapExactTokensForTokens:BELOW_MINIMUM");

SwapPool

withdraw: MINIMUM_AMOUNT

Thrown when the withdraw amount _payoutAmount is less than the accepted minimum amount _minimumAmount.

require(payoutAmount_ >= _minimumAmount, "SP:withdraw:MINIMUM_AMOUNT");

backstopBurn: TIMELOCK

Thrown when the user _owner attempts to execute a backstopBurn in the same block as their last deposit, and the shares to burn exceed the balance held before that deposit.

backstopBurn: INSUFFICIENT_COVERAGE

Thrown when the coverage ratio of the swap pool is more or would still be greater than 100% for the amount of swap pool LP shares to be redeemed for backstop pool liquidity.

backstopDrain: INSUFFICIENT_COVERAGE

Thrown when the coverage ratio of the swap pool is less or would become lower than 100% for the amount of backstop pool LP shares to be withdrawn for swap pool liquidity.

swap: EXCEEDS_MAX_COVERAGE_RATIO

Thrown when the coverage ratio of the swap pool would exceed 200% after swap inequire(


BackstopPool

withdraw: MINIMUM_AMOUNT

Thrown when the withdraw amount _payoutAmount is less than the accepted minimum amount _minimumAmount.

redeemSwapPoolShares: MIN_AMOUNT

Thrown when the amount of the to be withdrawn backstop pool LP shares for swap pool liquidity is less the accepted minimum amount _minAmount.

Last updated