Skip to content

ConstantVariables ​

Git Source

State Variables ​

GOVERNANCE_SLOT ​

Storage slot with the admin of the contract. Logic from "proxy.sol". This is the keccak-256 hash of "eip1967.proxy.admin" subtracted by 1, and is validated in the constructor.

solidity
bytes32 internal constant GOVERNANCE_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103

EXCHANGE_PRICES_PRECISION ​

solidity
uint256 internal constant EXCHANGE_PRICES_PRECISION = 1e12

NATIVE_TOKEN_ADDRESS ​

address that is mapped to the chain native token

solidity
address internal constant NATIVE_TOKEN_ADDRESS = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE

NATIVE_TOKEN_DECIMALS ​

decimals for native token

solidity
uint8 internal constant NATIVE_TOKEN_DECIMALS = 18

MIN_TOKEN_DECIMALS ​

Minimum token decimals for any token that can be listed at Liquidity (inclusive)

solidity
uint8 internal constant MIN_TOKEN_DECIMALS = 6

MAX_TOKEN_DECIMALS ​

Maximum token decimals for any token that can be listed at Liquidity (inclusive)

solidity
uint8 internal constant MAX_TOKEN_DECIMALS = 18

SECONDS_PER_YEAR ​

Ignoring leap years

solidity
uint256 internal constant SECONDS_PER_YEAR = 365 days

MAX_TOKEN_AMOUNT_CAP ​

limit any total amount to be half of type(uint128).max (~3.4e38) at type(int128).max (~1.7e38) as safety measure for any potential overflows / unexpected outcomes. This is checked for total borrow / supply.

solidity
uint256 internal constant MAX_TOKEN_AMOUNT_CAP = uint256(uint128(type(int128).max))

MAX_INPUT_AMOUNT_EXCESS ​

limit for triggering a revert if sent along excess input amount diff is bigger than this percentage (in 1e2)

solidity
uint256 internal constant MAX_INPUT_AMOUNT_EXCESS = 100

SKIP_TRANSFERS ​

if this bytes32 is set in the calldata, then token transfers are skipped as long as Liquidity layer is on the winning side.

solidity
bytes32 internal constant SKIP_TRANSFERS = keccak256(bytes("SKIP_TRANSFERS"))

NET_TRANSFERS ​

if this bytes32 is set in the calldata, then token transfers are only done for net input - output.

solidity
bytes32 internal constant NET_TRANSFERS = keccak256(bytes("NET_TRANSFERS"))

SKIP_TRANSFER_OUT_BELOW_VALUE_SIGNAL ​

solidity
int256 internal constant SKIP_TRANSFER_OUT_BELOW_VALUE_SIGNAL = -1

FORCE_STORAGE_WRITE_AFTER_TIME ​

time after which a write to storage of exchangePricesAndConfig will happen always.

solidity
uint256 internal constant FORCE_STORAGE_WRITE_AFTER_TIME = 1 days

TOTAL_DECAY_CHECKPOINTS ​

target duration for new decays on deposit amounts that push the withdrawal limit up. effective duration depends on existing decay amount ratio to new decay amount.

solidity
uint256 internal constant TOTAL_DECAY_CHECKPOINTS = 1e3

MIN_DECAY_DURATION_CHECKPOINTS ​

solidity
uint256 internal constant MIN_DECAY_DURATION_CHECKPOINTS = 80

DECAY_CHECKPOINT_DURATION_SCALEDX10 ​

solidity
uint256 internal constant DECAY_CHECKPOINT_DURATION_SCALEDX10 = 36

MAX_NEW_VS_EXISTING_TOTAL_AMOUNT_RATIO_DEPOSIT_BORROW ​

when a new operate amount is > 10_000 * existing total amount AND the amount is bigger than 2 ** 80 -> revert. extra input validation safety check.

solidity
uint256 internal constant MAX_NEW_VS_EXISTING_TOTAL_AMOUNT_RATIO_DEPOSIT_BORROW = 10_000

MAX_NEW_VS_EXISTING_TOTAL_AMOUNT_RATIO_WITHDRAW_PAYBACK ​

solidity
uint256 internal constant MAX_NEW_VS_EXISTING_TOTAL_AMOUNT_RATIO_WITHDRAW_PAYBACK = 2

MAX_NEW_AMOUNT_WHEN_RATIO_CHECK ​

solidity
uint256 internal constant MAX_NEW_AMOUNT_WHEN_RATIO_CHECK = 2 ** 80

DECAY_COEFFICIENT_SIZE ​

constants used for BigMath conversion from and to storage

solidity
uint256 internal constant DECAY_COEFFICIENT_SIZE = 18

SMALL_COEFFICIENT_SIZE ​

solidity
uint256 internal constant SMALL_COEFFICIENT_SIZE = 10

DEFAULT_COEFFICIENT_SIZE ​

solidity
uint256 internal constant DEFAULT_COEFFICIENT_SIZE = 56

DEFAULT_EXPONENT_SIZE ​

solidity
uint256 internal constant DEFAULT_EXPONENT_SIZE = 8

DEFAULT_EXPONENT_MASK ​

solidity
uint256 internal constant DEFAULT_EXPONENT_MASK = 0xFF

FOUR_DECIMALS ​

constants to increase readability for using bit masks

solidity
uint256 internal constant FOUR_DECIMALS = 1e4

TWELVE_DECIMALS ​

solidity
uint256 internal constant TWELVE_DECIMALS = 1e12

X8 ​

solidity
uint256 internal constant X8 = 0xff

X10 ​

solidity
uint256 internal constant X10 = 0x3ff

X14 ​

solidity
uint256 internal constant X14 = 0x3fff

X15 ​

solidity
uint256 internal constant X15 = 0x7fff

X16 ​

solidity
uint256 internal constant X16 = 0xffff

X18 ​

solidity
uint256 internal constant X18 = 0x3ffff

X24 ​

solidity
uint256 internal constant X24 = 0xffffff

X26 ​

solidity
uint256 internal constant X26 = 0x3ffffff

X33 ​

solidity
uint256 internal constant X33 = 0x1ffffffff

X64 ​

solidity
uint256 internal constant X64 = 0xffffffffffffffff

DEXV2_IDENTIFIER ​

solidity
bytes32 internal constant DEXV2_IDENTIFIER = keccak256(bytes("DEXV2"))