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.

Liquid Staked BLO

Verified contract

Proxy

Active on Base with 1,664 txns
Deployed by via 0xa20b8c0b at 16104917
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
-
variable spans 1 additional slot
ERC-20
--
ERC-20
--
ERC-20
--
ERC-20
--
0x6e3cfca35dafc0914bd93132ae333fb6547d912e272806db1f461755bf7539f1
0x6e16ebe550af87e590b1c7edce1069d8965b89274c98bc8bb56f785612c98e1d
0xfb577042b0e2494aa46ee541adbc2c679f3cf7a6205c9e53e68943a108271bc5
0x4aee81ce399af5c463c6e6a88b25b0b5175c274e5a32da3222f7046523b7d8ab
0x8b8b46fe7084848675cb173774017d4a79329380c53d5fcdd5abb50324c1a3c3
0xae56cd340d1048ab230ce2512d3fb3d62eaee07fd8e02a518d3c03127398da97
0xec2348f20d446d8d509fa0e60f27be5016b2f3cb5425cdee29d00044c0185993
0xab8575c8b6085d181f79a17e00ab6e6fcfda7032522015509a1cf13faf717948
0x0b4c0aa4a496f75d86a0dff3e76e5ddb0a60b2332a1e8a90093724f0ed7f5105
0x04d8be5b5cfd70270d8cd3322f35427d925eeee09215c77a92718c7fb4dca8ca

Functions
Getter at block 23858086
DOMAIN_SEPARATOR(view returns (bytes32)
0x68f1992fdf33182005321c39a9e262f225eaa0ce7e64fcda668366e874dda7c4
UPGRADE_INTERFACE_VERSION(view returns (string)
5.0.0
authority(view returns (address)
0x5f57191e88368690c5c754d3dddeeae8d600c199
decimals(view returns (uint8)
18
duration(view returns (uint256)
2592000
eip712Domain(view returns (bytes1 fieldsstring namestring versionuint256 chainIdaddress verifyingContractbytes32 saltuint256[] extensions)
(fields=0x0f, name=Liquid Staked BLO, version=1, chainId=8453, verifyingContract=0x2ce8774a9b5f5bc362bf1a59e11e4525f519a847, salt=0x0000000000000000000000000000000000000000000000000000000000000000, extensions=[])
 
getStakedBalances(view returns (address[] addressesuint256[] balances)
isConsumingScheduledOp(view returns (bytes4)
0x00000000
lastUpdateTime(view returns (uint256)
1733676865
name(view returns (string)
Liquid Staked BLO
paused(view returns (bool)
false
 
proxiableUUID(view returns (bytes32)
rewardPerToken(view returns (uint256)
136258071768654724
rewardPerTokenStored(view returns (uint256)
129444639585610983
rewardRate(view returns (uint256)
46522666610272296000847
 
stakers(view returns (address[])
stakingToken(view returns (address)
0xd48128ca84ba3b1d8cffe0b1ca48324f7f7401b5
startTime(view returns (uint256)
1719008069
symbol(view returns (string)
stBLO
totalStaked(view returns (uint256)
5658116605784829841105021496777
totalSupply(view returns (uint256)
5658116605784829841105021496777
Read-only
allowance(address owneraddress spenderview returns (uint256)
balanceOf(address accountview returns (uint256)
earned(address _accountview returns (uint256)
getStakeBalance(address accountview returns (uint256)
nonces(address ownerview returns (uint256)
users(addressview returns (uint256 balanceuint256 rewarduint256 rewardPerTokenPaidaddress escrow)
State-modifying
approve(address spenderuint256 valuereturns (bool)
burn(uint256 value
burnFrom(address accountuint256 value
claim(
claim(address user_
depositRewards(uint256 amount
initialize(
massClaim(
pause(
permit(address owneraddress spenderuint256 valueuint256 deadlineuint8 vbytes32 rbytes32 s
restake(
setAuthority(address newAuthority
setStakingToken(address token_
stake(uint256 amount
sweep(address token_
transfer(address touint256 valuereturns (bool)
transferFrom(address fromaddress touint256 valuereturns (bool)
unpause(
updateDuration(uint256 _duration
upgradeToAndCall(address newImplementationbytes datapayable 
withdraw(uint256 amount
Events
Upgraded(address indexed implementation
Approval(address indexed owneraddress indexed spenderuint256 value
AuthorityUpdated(address authority
EIP712DomainChanged(
Initialized(uint64 version
Paused(address account
RewardLost(address indexed useruint256 reward
RewardPaid(address indexed useruint256 reward
RewardsDeposited(uint256 amountuint256 rate
Staked(address indexed useruint256 amount
Transfer(address indexed fromaddress indexed touint256 value
Unpaused(address account
Upgraded(address indexed implementation
Withdrawn(address indexed useruint256 amount
Constructor
constructor(address implementationbytes _data
Fallback and receive
fallback(
Errors
AddressEmptyCode(address target
ERC1967InvalidImplementation(address implementation
ERC1967NonPayable(
FailedInnerCall(
AccessManagedInvalidAuthority(address authority
AccessManagedRequiredDelay(address calleruint32 delay
AccessManagedUnauthorized(address caller
AddressEmptyCode(address target
AddressUnchanged(
AddressZero(
AlreadyStarted(uint256 arg0
AmountExceedsAllowed(uint256 wantuint256 have
AmountZero(
ECDSAInvalidSignature(
ECDSAInvalidSignatureLength(uint256 length
ECDSAInvalidSignatureS(bytes32 s
ERC1967InvalidImplementation(address implementation
ERC1967NonPayable(
ERC20InsufficientAllowance(address spenderuint256 allowanceuint256 needed
ERC20InsufficientBalance(address senderuint256 balanceuint256 needed
ERC20InvalidApprover(address approver
ERC20InvalidReceiver(address receiver
ERC20InvalidSender(address sender
ERC20InvalidSpender(address spender
ERC2612ExpiredSignature(uint256 deadline
ERC2612InvalidSigner(address signeraddress owner
EmptyArray(
EnforcedPause(
ExpectedPause(
FailedInnerCall(
InsufficientBalance(
InvalidAccountNonce(address accountuint256 currentNonce
InvalidAddress(
InvalidInitialization(
NoStakers(
NoStakingTokenDefined(
NotInitializing(
NotStarted(
UUPSUnauthorizedCallContext(
UUPSUnsupportedProxiableUUID(bytes32 slot
ValueUnchanged(