Bytecode-generated storage layout

We've generated a storage layout (with no variable labels) from this contract's bytecode. We've also started a backfill to track the inferred variables and it is currently at block 22918089.

Stable AMM - WETH/rETH

Unverified contract

Proxy

Active on Base with 214 txns
Deployed by via 0xa8552377 at 12294691
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
8 additional variables
ERC-20
Value $120,556.12
ERC-20
Value $60,577.66
ERC-20
Value $0
ERC-20
Value $0
ERC-20
--
ERC-20
--
ERC-20
--
ERC-20
--
ERC-20
--
ERC-20
--
0x42d229fc2e7c1536f2ccbb6c7d34873b214cd168b5954510c09fc773bd721c36
0x3d0e0c747a3330de0689eb761efdc32bd18da78a5829121458c613d3277383ff
0x46533dfd3271d157fa1339b1bc795135783b2abdd7b92bc25c963584e5eb80aa
0xb5cc4f91c132ed01a49ca460854a2da41d652efebc27d57fad848c6a2f10a279
0x671a244692cb4d927926b4ed8526b9e3a7df758526507a8f9aaeee1deddee4da
0x38e0553f8850a5916d5dd9dd1a1cf4a19eed131148bf0bccdcde3529ff038bdc
0x9590ee891e1c2bbf35a9e98b336fddb42ce2b1edb97cb7e8a552ccbadfcc746b
0x4c214b668ec93635c3a5737a7d2e91b970d3e17f6c2aad9b5ccc15247427ab40
0x965b60a4c7d114b42469607a0511bde8acb5281bf2e6d079b813f17611031989
0xc0a707c931f6cfb06d3cf7dc96eba4977d4c260b8900c5e039d4fc829bfebde1

Functions
Getter at block 22918091
DOMAIN_SEPARATOR(view returns (bytes32)
0xf316b04a7646f6d93d9041f356b5fadda94604ae6835b844088b6065e2abfa24
blockTimestampLast(view returns (uint256)
1732619805
currentCumulativePrices(view returns (uint256 reserve0Cumulativeuint256 reserve1Cumulativeuint256 blockTimestamp)
(reserve0Cumulative=3935480264151830590404494232, reserve1Cumulative=1766990869244443047618553330, blockTimestamp=1732625529)
decimals(view returns (uint8)
18
eip712Domain(view returns (bytes1 fieldsstring namestring versionuint256 chainIdaddress verifyingContractbytes32 saltuint256[] extensions)
(fields=0x0f, name=, version=1, chainId=8453, verifyingContract=0xb8866732424acddd729c6fcf7146b19bfe4a2e36, salt=0x0000000000000000000000000000000000000000000000000000000000000000, extensions=[])
factory(view returns (address)
0x420dd381b31aef6683db6b902084cb0ffece40da
getReserves(view returns (uint256 _reserve0uint256 _reserve1uint256 _blockTimestampLast)
(_reserve0=36383425793594196931, _reserve1=16435418327654607263, _blockTimestampLast=1732619805)
index0(view returns (uint256)
3189110528033672
index1(view returns (uint256)
2676577389454685
lastObservation(view returns (struct IPoolObservation)
(1732619805, 3935272005422588057221261188, 1766896792909935552646579918)
metadata(view returns (uint256 dec0uint256 dec1uint256 r0uint256 r1bool staddress t0address t1)
(dec0=1000000000000000000, dec1=1000000000000000000, r0=36383425793594196931, r1=16435418327654607263, st=true, t0=0x4200000000000000000000000000000000000006, t1=0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c)
name(view returns (string)
Stable AMM - WETH/rETH
observationLength(view returns (uint256)
3149
periodSize(view returns (uint256)
1800
poolFees(view returns (address)
0x31390c3a848c2459b453742abf0b4f214771a8b1
reserve0(view returns (uint256)
36383425793594196931
reserve0CumulativeLast(view returns (uint256)
3935272005422588057221261188
reserve1(view returns (uint256)
16435418327654607263
reserve1CumulativeLast(view returns (uint256)
1766896792909935552646579918
stable(view returns (bool)
true
symbol(view returns (string)
sAMM-WETH/rETH
token0(view returns (address)
0x4200000000000000000000000000000000000006
token1(view returns (address)
0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c
tokens(view returns (addressaddress)
(0x4200000000000000000000000000000000000006, 0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c)
totalSupply(view returns (uint256)
26273568743950690880
Read-only
allowance(address owneraddress spenderview returns (uint256)
balanceOf(address accountview returns (uint256)
claimable0(addressview returns (uint256)
claimable1(addressview returns (uint256)
getAmountOut(uint256 amountInaddress tokenInview returns (uint256)
nonces(address ownerview returns (uint256)
observations(uint256view returns (uint256 timestampuint256 reserve0Cumulativeuint256 reserve1Cumulative)
prices(address tokenInuint256 amountInuint256 pointsview returns (uint256[])
quote(address tokenInuint256 amountInuint256 granularityview returns (uint256 amountOut)
sample(address tokenInuint256 amountInuint256 pointsuint256 windowview returns (uint256[])
supplyIndex0(addressview returns (uint256)
supplyIndex1(addressview returns (uint256)
State-modifying
approve(address spenderuint256 amountreturns (bool)
burn(address toreturns (uint256 amount0uint256 amount1)
claimFees(returns (uint256 claimed0uint256 claimed1)
decreaseAllowance(address spenderuint256 subtractedValuereturns (bool)
getK(returns (uint256)
increaseAllowance(address spenderuint256 addedValuereturns (bool)
initialize(address _token0address _token1bool _stable
mint(address toreturns (uint256 liquidity)
permit(address owneraddress spenderuint256 valueuint256 deadlineuint8 vbytes32 rbytes32 s
setName(string __name
setSymbol(string __symbol
skim(address to
swap(uint256 amount0Outuint256 amount1Outaddress tobytes data
sync(
transfer(address touint256 amountreturns (bool)
transferFrom(address fromaddress touint256 amountreturns (bool)
Events
Approval(address indexed owneraddress indexed spenderuint256 value
Burn(address indexed senderaddress indexed touint256 amount0uint256 amount1
Claim(address indexed senderaddress indexed recipientuint256 amount0uint256 amount1
EIP712DomainChanged(
Fees(address indexed senderuint256 amount0uint256 amount1
Mint(address indexed senderuint256 amount0uint256 amount1
Swap(address indexed senderaddress indexed touint256 amount0Inuint256 amount1Inuint256 amount0Outuint256 amount1Out
Sync(uint256 reserve0uint256 reserve1
Transfer(address indexed fromaddress indexed touint256 value
Constructor

This contract contains no constructor objects.

Fallback and receive

This contract contains no fallback and receive objects.

Errors
BelowMinimumK(
DepositsNotEqual(
FactoryAlreadySet(
InsufficientInputAmount(
InsufficientLiquidity(
InsufficientLiquidityBurned(
InsufficientLiquidityMinted(
InsufficientOutputAmount(
InvalidTo(
IsPaused(
K(
NotEmergencyCouncil(
StringTooLong(string str