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.

0xf8f09ac92cbd53025ecda3c0565125e83223d482

Unverified contract

Proxy

Active on Base with 5 txns
Deployed by via 0x2a306eb0 at 18322943
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
-
variable spans 1 additional slot
-
variable spans 1 additional slot
Native
Value $0
ERC-20
--
0xd8cd854dd6f1d57e1d79d2992750564cffaa713af05e8f313f2d2fbd7c3d3afa
0x0d15c21b4c1fd88401a85649c857bd4fcc02eeca502766b3ecee06039999fea0
0xddf558d439656e59215fd5363652c1de740d8b6d2caa57020dcb1e330825c8a1
0x0cacadec65df8dde9dd01f08894fbb40e581585a5922dce0fec3cfb8df5ca1d3
0x6dd348c9cdf7ca36aa39bb14d256803c8f8b9aee45ad2c715ec5fb06c037d021

Functions
Getter at block 23579065
VERSION(view returns (string)
2.0.0
accountVolumeSpent(view returns (uint256)
0
dailyVolumeSpent(view returns (uint256)
10163759171087942640000000000000
getActivePolicyIds(view returns (uint256[])
[0, 1]
getAdmins(view returns (address[])
[]
getAllPolicyLimit(view returns (uint256[]uint256[]uint256[])
([0, 1], [0, 0], [0, 0])
getControlCenter(view returns (address)
0x97479a238518498b393c3f5918d590e2bf0e34da
getIsTakeoverInProgress(view returns (bool)
false
getNextSettingRequestId(view returns (uint256)
0
getNextTransactionRequestId(view returns (uint256)
0
getOwner(view returns (address)
0x7b22fab60a5a7356aa15d2e20c4e5ac19e673258
getTakeoverStatus(view returns (addressbooluint256uint256)
(0x0000000000000000000000000000000000000000, false, 0, 0)
getTakeoverTimestamp(view returns (uint256)
0
getTotalVolumeSpent(view returns (uint256)
10163759171087942640000000000000
lastDailyVolumeDate(view returns (uint256)
1724716800
nextPolicyId(view returns (uint256)
2
paused(view returns (bool)
false
Read-only
getDailyVolumeSpent(uint256 policyIdview returns (uint256)
getKnightSafeAnalyserAddress(uint256 policyIdaddress whitelistAddressview returns (address)
getMaxSpendingLimit(uint256 policyIdview returns (uint256)
getPolicyUpdateDate(uint256 policyIdview returns (uint256)
getSettingRequest(uint256 reqIdview returns (struct SettingUtilsRequest)
getTraders(uint256 policyIdview returns (address[])
getTransactionRequest(uint256 reqIdview returns (struct TransactionRequest)
getWhitelistAddresses(uint256 policyIdview returns (address[])
isActivePolicy(uint256 policyIdview returns (bool)
isAdmin(address adminview returns (bool)
isPolicyOrGlobalWhitelistAddress(uint256 policyIdaddress _addressview returns (bool)
isPolicyWhitelistAddress(uint256 policyIdaddress _addressview returns (bool)
isTrader(uint256 policyIdaddress traderview returns (bool)
isValidSignature(bytes32 _hashbytes _signatureview returns (bytes4)
validateTradingAccess(uint256 policyIdbool useGlobalWhitelistaddress tobytes dataview returns (address[] addressesuint256[] amounts)
State-modifying
addAdmin(address admin
addTrader(uint256 policyIdaddress trader
cancelSettingByReqId(uint256 reqId
cancelTransactionByReqId(uint256 onBehalfOfPolicyIduint256 reqId
confirmTakeover(
createPolicy(
executeSettingByReqId(uint256 reqIdreturns (bool success)
executeTransaction(uint256 onBehalfOfPolicyIdbool useGlobalWhitelistaddress touint256 valuebytes data
executeTransactionByReqId(uint256 onBehalfOfPolicyIdbool useGlobalWhitelistuint256 reqId
initialize(address owneraddress controlCenteraddress fallbackHandler
instantTakeover(
multicall(bytes[] datareturns (bytes[] results)
pause(
reduceSpendingLimit(uint256 policyIduint256 maxSpendingLimit
rejectSettingByReqId(uint256 reqId
rejectTransactionByReqId(uint256 onBehalfOfPolicyIdbool useGlobalWhitelistuint256 reqId
removeAdmin(address admin
removePolicy(uint256 policyId
removeTrader(uint256 policyIdaddress trader
removeWhitelist(uint256 policyIdaddress whitelistAddress
requestSetting(uint8 selectorbytes paramreturns (uint256 reqId)
requestTakeover(
requestTransaction(uint256 onBehalfOfPolicyIdaddress touint256 valuebytes datareturns (uint256 reqId)
resetDailySpent(uint256 policyId
revokeTakeover(
setBackupOwner(address backupOwneruint256 takeoverDelayIsSecond
setMaxSpendingLimit(uint256 policyIduint256 maxSpendingLimit
unpause(
updateControlCenter(address controlCenter
updateFallbackHandler(address handler
updateWhitelist(uint256 policyIdaddress whitelistAddressaddress officialAnalyserAddress
validatePolicyLimit(uint256 policyIduint256 volume
validateTradingLimit(address[] addressesuint256[] amountsuint256 valuereturns (uint256)
Events
Paused(address account
Unpaused(address account
Constructor

This contract contains no constructor objects.

Fallback and receive
fallback(
receive(
Errors
AddressAlreadyExist(address _address
AddressEmptyCode(address target
AddressIsNotKnightSafeAnalyser(address _address
AddressIsReadOnlyWhitelist(uint256 policyIdaddress _address
AddressNotExist(address _address
AddressNotInWhitelist(uint256 policyIdaddress _address
ECDSAInvalidSignature(
ECDSAInvalidSignatureS(bytes32 s
EnforcedPause(
ExceedMaxTradingVolume(uint256 txnVolumeuint256 maxVolume
ExceedPolicyVolume(uint256 policyIduint256 volume
ExecutionFailedWith(bytes data
ExpectedPause(
FailedInnerCall(
FeatureNotSupport(string plan
InvalidAddress(address _address
InvalidLength(
InvalidOperation(
InvalidReqId(uint256 reqId
InvalidSettingStatus(
InvalidTakeoverStatus(bool inProgress
InvalidTransactionStatus(
InvalidValue(
MaxPolicyCountReached(uint256 maxPolicyCount
PolicyNotExist(uint256 policyId
SelectorNotSupport(
TakeoverIsNotReady(
Unauthorized(address msgSenderstring role