Commit d99c99c4 authored by inphi's avatar inphi

fix labels; add storage width to storage layout

parent 02a7f5a8
...@@ -37,6 +37,7 @@ type AbiSpecStorageLayoutEntry = { ...@@ -37,6 +37,7 @@ type AbiSpecStorageLayoutEntry = {
slot: number slot: number
offset: number offset: number
type: string type: string
bytes: number
} }
const sortKeys = (obj: any) => { const sortKeys = (obj: any) => {
if (typeof obj !== 'object' || obj === null) { if (typeof obj !== 'object' || obj === null) {
...@@ -104,8 +105,14 @@ const main = async () => { ...@@ -104,8 +105,14 @@ const main = async () => {
const storageLayout: AbiSpecStorageLayoutEntry[] = [] const storageLayout: AbiSpecStorageLayoutEntry[] = []
for (const storageEntry of artifact.storageLayout.storage) { for (const storageEntry of artifact.storageLayout.storage) {
// convert ast-based type to solidity type
const typ = artifact.storageLayout.types[storageEntry.type]
if (typ === undefined) {
throw new Error(`undefined type for ${contractName}:${storageEntry.label}`)
}
storageLayout.push({ storageLayout.push({
label: storageEntry.label, label: typ.label,
bytes: typ.numberOfBytes,
offset: storageEntry.offset, offset: storageEntry.offset,
slot: storageEntry.slot, slot: storageEntry.slot,
type: storageEntry.type, type: storageEntry.type,
......
[ [
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "addresses", "bytes": "32",
"label": "mapping(bytes32 => address)",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_bytes32,t_address)" "type": "t_mapping(t_bytes32,t_address)"
......
[ [
{ {
"label": "owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
......
[ [
{ {
"label": "attestations", "bytes": "32",
"label": "mapping(address => mapping(address => mapping(bytes32 => bytes)))",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_mapping(t_address,t_mapping(t_bytes32,t_bytes_storage)))" "type": "t_mapping(t_address,t_mapping(t_address,t_mapping(t_bytes32,t_bytes_storage)))"
......
[ [
{ {
"label": "totalProcessed", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint256" "type": "t_uint256"
......
[ [
{ {
"label": "blocks", "bytes": "32",
"label": "mapping(uint256 => struct BlockOracle.BlockInfo)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_uint256,t_struct(BlockInfo)81594_storage)" "type": "t_mapping(t_uint256,t_struct(BlockInfo)81992_storage)"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "_delay", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "_queuedAt", "bytes": "32",
"label": "mapping(bytes32 => uint256)",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_bytes32,t_uint256)" "type": "t_mapping(t_bytes32,t_uint256)"
......
[ [
{ {
"label": "owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "whitelist", "bytes": "32",
"label": "mapping(address => bool)",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_bool)" "type": "t_mapping(t_address,t_bool)"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "gameImpls", "bytes": "32",
"label": "mapping(GameType => contract IDisputeGame)",
"offset": 0, "offset": 0,
"slot": "101", "slot": "101",
"type": "t_mapping(t_userDefinedValueType(GameType)85641,t_contract(IDisputeGame)83315)" "type": "t_mapping(t_userDefinedValueType(GameType)86039,t_contract(IDisputeGame)83713)"
}, },
{ {
"label": "_disputeGames", "bytes": "32",
"label": "mapping(Hash => GameId)",
"offset": 0, "offset": 0,
"slot": "102", "slot": "102",
"type": "t_mapping(t_userDefinedValueType(Hash)85623,t_userDefinedValueType(GameId)85635)" "type": "t_mapping(t_userDefinedValueType(Hash)86021,t_userDefinedValueType(GameId)86033)"
}, },
{ {
"label": "_disputeGameList", "bytes": "32",
"label": "GameId[]",
"offset": 0, "offset": 0,
"slot": "103", "slot": "103",
"type": "t_array(t_userDefinedValueType(GameId)85635)dyn_storage" "type": "t_array(t_userDefinedValueType(GameId)86033)dyn_storage"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "drips", "bytes": "32",
"label": "mapping(string => struct Drippie.DripState)",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_string_memory_ptr,t_struct(DripState)88682_storage)" "type": "t_mapping(t_string_memory_ptr,t_struct(DripState)89080_storage)"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "_nonces", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "_db", "bytes": "32",
"label": "mapping(bytes32 => struct Attestation)",
"offset": 0, "offset": 0,
"slot": "50", "slot": "50",
"type": "t_mapping(t_bytes32,t_struct(Attestation)43501_storage)" "type": "t_mapping(t_bytes32,t_struct(Attestation)55167_storage)"
}, },
{ {
"label": "_timestamps", "bytes": "32",
"label": "mapping(bytes32 => uint64)",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_mapping(t_bytes32,t_uint64)" "type": "t_mapping(t_bytes32,t_uint64)"
}, },
{ {
"label": "_revocationsOffchain", "bytes": "32",
"label": "mapping(address => mapping(bytes32 => uint64))",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_mapping(t_address,t_mapping(t_bytes32,t_uint64))" "type": "t_mapping(t_address,t_mapping(t_bytes32,t_uint64))"
}, },
{ {
"label": "__gap", "bytes": "1504",
"label": "uint256[47]",
"offset": 0, "offset": 0,
"slot": "53", "slot": "53",
"type": "t_array(t_uint256)47_storage" "type": "t_array(t_uint256)47_storage"
......
[ [
{ {
"label": "modules", "bytes": "32",
"label": "mapping(contract IFaucetAuthModule => struct Faucet.ModuleConfig)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_contract(IFaucetAuthModule)89603,t_struct(ModuleConfig)89280_storage)" "type": "t_mapping(t_contract(IFaucetAuthModule)90001,t_struct(ModuleConfig)89678_storage)"
}, },
{ {
"label": "timeouts", "bytes": "32",
"label": "mapping(contract IFaucetAuthModule => mapping(bytes32 => uint256))",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_contract(IFaucetAuthModule)89603,t_mapping(t_bytes32,t_uint256))" "type": "t_mapping(t_contract(IFaucetAuthModule)90001,t_mapping(t_bytes32,t_uint256))"
}, },
{ {
"label": "nonces", "bytes": "32",
"label": "mapping(bytes32 => mapping(bytes32 => bool))",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_mapping(t_bytes32,t_mapping(t_bytes32,t_bool))" "type": "t_mapping(t_bytes32,t_mapping(t_bytes32,t_bool))"
......
[ [
{ {
"label": "createdAt", "bytes": "8",
"label": "Timestamp",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_userDefinedValueType(Timestamp)85631" "type": "t_userDefinedValueType(Timestamp)86029"
}, },
{ {
"label": "status", "bytes": "1",
"label": "enum GameStatus",
"offset": 8, "offset": 8,
"slot": "0", "slot": "0",
"type": "t_enum(GameStatus)85647" "type": "t_enum(GameStatus)86045"
}, },
{ {
"label": "bondManager", "bytes": "20",
"label": "contract IBondManager",
"offset": 9, "offset": 9,
"slot": "0", "slot": "0",
"type": "t_contract(IBondManager)83238" "type": "t_contract(IBondManager)83636"
}, },
{ {
"label": "l1Head", "bytes": "32",
"label": "Hash",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_userDefinedValueType(Hash)85623" "type": "t_userDefinedValueType(Hash)86021"
}, },
{ {
"label": "claimData", "bytes": "32",
"label": "struct IFaultDisputeGame.ClaimData[]",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_array(t_struct(ClaimData)83452_storage)dyn_storage" "type": "t_array(t_struct(ClaimData)83850_storage)dyn_storage"
}, },
{ {
"label": "proposals", "bytes": "128",
"label": "struct IFaultDisputeGame.OutputProposals",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_struct(OutputProposals)83467_storage" "type": "t_struct(OutputProposals)83865_storage"
}, },
{ {
"label": "claims", "bytes": "32",
"label": "mapping(ClaimHash => bool)",
"offset": 0, "offset": 0,
"slot": "7", "slot": "7",
"type": "t_mapping(t_userDefinedValueType(ClaimHash)85627,t_bool)" "type": "t_mapping(t_userDefinedValueType(ClaimHash)86025,t_bool)"
}, },
{ {
"label": "subgames", "bytes": "32",
"label": "mapping(uint256 => uint256[])",
"offset": 0, "offset": 0,
"slot": "8", "slot": "8",
"type": "t_mapping(t_uint256,t_array(t_uint256)dyn_storage)" "type": "t_mapping(t_uint256,t_array(t_uint256)dyn_storage)"
}, },
{ {
"label": "subgameAtRootResolved", "bytes": "1",
"label": "bool",
"offset": 0, "offset": 0,
"slot": "9", "slot": "9",
"type": "t_bool" "type": "t_bool"
......
[ [
{ {
"label": "_balances", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "_allowances", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
}, },
{ {
"label": "_totalSupply", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "_name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_nonces", "bytes": "32",
"label": "mapping(address => struct Counters.Counter)",
"offset": 0, "offset": 0,
"slot": "5", "slot": "5",
"type": "t_mapping(t_address,t_struct(Counter)49915_storage)" "type": "t_mapping(t_address,t_struct(Counter)51095_storage)"
}, },
{ {
"label": "_PERMIT_TYPEHASH_DEPRECATED_SLOT", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "6", "slot": "6",
"type": "t_bytes32" "type": "t_bytes32"
}, },
{ {
"label": "_delegates", "bytes": "32",
"label": "mapping(address => address)",
"offset": 0, "offset": 0,
"slot": "7", "slot": "7",
"type": "t_mapping(t_address,t_address)" "type": "t_mapping(t_address,t_address)"
}, },
{ {
"label": "_checkpoints", "bytes": "32",
"label": "mapping(address => struct ERC20Votes.Checkpoint[])",
"offset": 0, "offset": 0,
"slot": "8", "slot": "8",
"type": "t_mapping(t_address,t_array(t_struct(Checkpoint)47061_storage)dyn_storage)" "type": "t_mapping(t_address,t_array(t_struct(Checkpoint)48241_storage)dyn_storage)"
}, },
{ {
"label": "_totalSupplyCheckpoints", "bytes": "32",
"label": "struct ERC20Votes.Checkpoint[]",
"offset": 0, "offset": 0,
"slot": "9", "slot": "9",
"type": "t_array(t_struct(Checkpoint)47061_storage)dyn_storage" "type": "t_array(t_struct(Checkpoint)48241_storage)dyn_storage"
}, },
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "10", "slot": "10",
"type": "t_address" "type": "t_address"
......
[ [
{ {
"label": "number", "bytes": "8",
"label": "uint64",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint64" "type": "t_uint64"
}, },
{ {
"label": "timestamp", "bytes": "8",
"label": "uint64",
"offset": 8, "offset": 8,
"slot": "0", "slot": "0",
"type": "t_uint64" "type": "t_uint64"
}, },
{ {
"label": "basefee", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "hash", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_bytes32" "type": "t_bytes32"
}, },
{ {
"label": "sequenceNumber", "bytes": "8",
"label": "uint64",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_uint64" "type": "t_uint64"
}, },
{ {
"label": "batcherHash", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_bytes32" "type": "t_bytes32"
}, },
{ {
"label": "l1FeeOverhead", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "5", "slot": "5",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "l1FeeScalar", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "6", "slot": "6",
"type": "t_uint256" "type": "t_uint256"
......
[ [
{ {
"label": "spacer_0_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 20, "offset": 20,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 21, "offset": 21,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "spacer_1_0_1600", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "spacer_51_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "spacer_52_0_1568", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "spacer_101_0_1", "bytes": "1",
"label": "bool",
"offset": 0, "offset": 0,
"slot": "101", "slot": "101",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "spacer_102_0_1568", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "102", "slot": "102",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "spacer_151_0_32", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "151", "slot": "151",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "spacer_152_0_1568", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "152", "slot": "152",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "spacer_201_0_32", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "201", "slot": "201",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "spacer_202_0_32", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "202", "slot": "202",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "successfulMessages", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "203", "slot": "203",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "xDomainMsgSender", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "204", "slot": "204",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "msgNonce", "bytes": "30",
"label": "uint240",
"offset": 0, "offset": 0,
"slot": "205", "slot": "205",
"type": "t_uint240" "type": "t_uint240"
}, },
{ {
"label": "failedMessages", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "206", "slot": "206",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "__gap", "bytes": "1344",
"label": "uint256[42]",
"offset": 0, "offset": 0,
"slot": "207", "slot": "207",
"type": "t_array(t_uint256)42_storage" "type": "t_array(t_uint256)42_storage"
......
[ [
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "deposits", "bytes": "32",
"label": "mapping(address => mapping(address => mapping(uint256 => bool)))",
"offset": 0, "offset": 0,
"slot": "49", "slot": "49",
"type": "t_mapping(t_address,t_mapping(t_address,t_mapping(t_uint256,t_bool)))" "type": "t_mapping(t_address,t_mapping(t_address,t_mapping(t_uint256,t_bool)))"
......
[ [
{ {
"label": "totalProcessed", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint256" "type": "t_uint256"
......
[ [
{ {
"label": "spacer_0_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "spacer_1_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "deposits", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
}, },
{ {
"label": "__gap", "bytes": "1504",
"label": "uint256[47]",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_array(t_uint256)47_storage" "type": "t_array(t_uint256)47_storage"
......
[ [
{ {
"label": "spacer_0_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 20, "offset": 20,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 21, "offset": 21,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "spacer_1_0_1600", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "spacer_51_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "spacer_52_0_1568", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "spacer_101_0_1", "bytes": "1",
"label": "bool",
"offset": 0, "offset": 0,
"slot": "101", "slot": "101",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "spacer_102_0_1568", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "102", "slot": "102",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "spacer_151_0_32", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "151", "slot": "151",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "spacer_152_0_1568", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "152", "slot": "152",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "spacer_201_0_32", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "201", "slot": "201",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "spacer_202_0_32", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "202", "slot": "202",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "successfulMessages", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "203", "slot": "203",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "xDomainMsgSender", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "204", "slot": "204",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "msgNonce", "bytes": "30",
"label": "uint240",
"offset": 0, "offset": 0,
"slot": "205", "slot": "205",
"type": "t_uint240" "type": "t_uint240"
}, },
{ {
"label": "failedMessages", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "206", "slot": "206",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "__gap", "bytes": "1344",
"label": "uint256[42]",
"offset": 0, "offset": 0,
"slot": "207", "slot": "207",
"type": "t_array(t_uint256)42_storage" "type": "t_array(t_uint256)42_storage"
......
[ [
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "startingBlockNumber", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "startingTimestamp", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "l2Outputs", "bytes": "32",
"label": "struct Types.OutputProposal[]",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_array(t_struct(OutputProposal)86496_storage)dyn_storage" "type": "t_array(t_struct(OutputProposal)86894_storage)dyn_storage"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "spacer_0_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "spacer_1_0_20", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "deposits", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
}, },
{ {
"label": "__gap", "bytes": "1504",
"label": "uint256[47]",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_array(t_uint256)47_storage" "type": "t_array(t_uint256)47_storage"
......
[ [
{ {
"label": "sentMessages", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "msgNonce", "bytes": "30",
"label": "uint240",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_uint240" "type": "t_uint240"
......
[ [
{ {
"label": "_balances", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "_allowances", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
}, },
{ {
"label": "_totalSupply", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "_name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_string_storage" "type": "t_string_storage"
......
[ [
{ {
"label": "sentMessages", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
......
[ [
{ {
"label": "_balances", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "_allowances", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
}, },
{ {
"label": "_totalSupply", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "_name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "l1Token", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "5", "slot": "5",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "l2Bridge", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "6", "slot": "6",
"type": "t_address" "type": "t_address"
......
[ [
{ {
"label": "lastLive", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "ownersBefore", "bytes": "64",
"label": "struct EnumerableSet.AddressSet",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_struct(AddressSet)53836_storage" "type": "t_struct(AddressSet)55016_storage"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "mintPermittedAfter", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_uint256" "type": "t_uint256"
......
[ [
{ {
"label": "_balances", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "_allowances", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
}, },
{ {
"label": "_totalSupply", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "_name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_string_storage" "type": "t_string_storage"
......
[ [
{ {
"label": "_name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_owners", "bytes": "32",
"label": "mapping(uint256 => address)",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_mapping(t_uint256,t_address)" "type": "t_mapping(t_uint256,t_address)"
}, },
{ {
"label": "_balances", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "_tokenApprovals", "bytes": "32",
"label": "mapping(uint256 => address)",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_mapping(t_uint256,t_address)" "type": "t_mapping(t_uint256,t_address)"
}, },
{ {
"label": "_operatorApprovals", "bytes": "32",
"label": "mapping(address => mapping(address => bool))",
"offset": 0, "offset": 0,
"slot": "5", "slot": "5",
"type": "t_mapping(t_address,t_mapping(t_address,t_bool))" "type": "t_mapping(t_address,t_mapping(t_address,t_bool))"
}, },
{ {
"label": "_ownedTokens", "bytes": "32",
"label": "mapping(address => mapping(uint256 => uint256))",
"offset": 0, "offset": 0,
"slot": "6", "slot": "6",
"type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))"
}, },
{ {
"label": "_ownedTokensIndex", "bytes": "32",
"label": "mapping(uint256 => uint256)",
"offset": 0, "offset": 0,
"slot": "7", "slot": "7",
"type": "t_mapping(t_uint256,t_uint256)" "type": "t_mapping(t_uint256,t_uint256)"
}, },
{ {
"label": "_allTokens", "bytes": "32",
"label": "uint256[]",
"offset": 0, "offset": 0,
"slot": "8", "slot": "8",
"type": "t_array(t_uint256)dyn_storage" "type": "t_array(t_uint256)dyn_storage"
}, },
{ {
"label": "_allTokensIndex", "bytes": "32",
"label": "mapping(uint256 => uint256)",
"offset": 0, "offset": 0,
"slot": "9", "slot": "9",
"type": "t_mapping(t_uint256,t_uint256)" "type": "t_mapping(t_uint256,t_uint256)"
}, },
{ {
"label": "baseTokenURI", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "10", "slot": "10",
"type": "t_string_storage" "type": "t_string_storage"
......
[ [
{ {
"label": "isOptimismMintableERC721", "bytes": "32",
"label": "mapping(address => bool)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_bool)" "type": "t_mapping(t_address,t_bool)"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "params", "bytes": "32",
"label": "struct ResourceMetering.ResourceParams",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_struct(ResourceParams)75595_storage" "type": "t_struct(ResourceParams)75993_storage"
}, },
{ {
"label": "__gap", "bytes": "1536",
"label": "uint256[48]",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_array(t_uint256)48_storage" "type": "t_array(t_uint256)48_storage"
}, },
{ {
"label": "l2Sender", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "50", "slot": "50",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "finalizedWithdrawals", "bytes": "32",
"label": "mapping(bytes32 => bool)",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_mapping(t_bytes32,t_bool)" "type": "t_mapping(t_bytes32,t_bool)"
}, },
{ {
"label": "provenWithdrawals", "bytes": "32",
"label": "mapping(bytes32 => struct OptimismPortal.ProvenWithdrawal)",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_mapping(t_bytes32,t_struct(ProvenWithdrawal)74655_storage)" "type": "t_mapping(t_bytes32,t_struct(ProvenWithdrawal)75053_storage)"
}, },
{ {
"label": "paused", "bytes": "1",
"label": "bool",
"offset": 0, "offset": 0,
"slot": "53", "slot": "53",
"type": "t_bool" "type": "t_bool"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "_name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "101", "slot": "101",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "102", "slot": "102",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "_owners", "bytes": "32",
"label": "mapping(uint256 => address)",
"offset": 0, "offset": 0,
"slot": "103", "slot": "103",
"type": "t_mapping(t_uint256,t_address)" "type": "t_mapping(t_uint256,t_address)"
}, },
{ {
"label": "_balances", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "104", "slot": "104",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "_tokenApprovals", "bytes": "32",
"label": "mapping(uint256 => address)",
"offset": 0, "offset": 0,
"slot": "105", "slot": "105",
"type": "t_mapping(t_uint256,t_address)" "type": "t_mapping(t_uint256,t_address)"
}, },
{ {
"label": "_operatorApprovals", "bytes": "32",
"label": "mapping(address => mapping(address => bool))",
"offset": 0, "offset": 0,
"slot": "106", "slot": "106",
"type": "t_mapping(t_address,t_mapping(t_address,t_bool))" "type": "t_mapping(t_address,t_mapping(t_address,t_bool))"
}, },
{ {
"label": "__gap", "bytes": "1408",
"label": "uint256[44]",
"offset": 0, "offset": 0,
"slot": "107", "slot": "107",
"type": "t_array(t_uint256)44_storage" "type": "t_array(t_uint256)44_storage"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "151", "slot": "151",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "_HASHED_NAME", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_bytes32" "type": "t_bytes32"
}, },
{ {
"label": "_HASHED_VERSION", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_bytes32" "type": "t_bytes32"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "commitmentTimestamps", "bytes": "32",
"label": "mapping(bytes32 => uint256)",
"offset": 0, "offset": 0,
"slot": "53", "slot": "53",
"type": "t_mapping(t_bytes32,t_uint256)" "type": "t_mapping(t_bytes32,t_uint256)"
}, },
{ {
"label": "usedNonces", "bytes": "32",
"label": "mapping(address => mapping(bytes32 => bool))",
"offset": 0, "offset": 0,
"slot": "54", "slot": "54",
"type": "t_mapping(t_address,t_mapping(t_bytes32,t_bool))" "type": "t_mapping(t_address,t_mapping(t_bytes32,t_bool))"
}, },
{ {
"label": "inviteCounts", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "55", "slot": "55",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
......
[ [
{ {
"label": "preimageLengths", "bytes": "32",
"label": "mapping(bytes32 => uint256)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_bytes32,t_uint256)" "type": "t_mapping(t_bytes32,t_uint256)"
}, },
{ {
"label": "preimageParts", "bytes": "32",
"label": "mapping(bytes32 => mapping(uint256 => bytes32))",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_bytes32,t_mapping(t_uint256,t_bytes32))" "type": "t_mapping(t_bytes32,t_mapping(t_uint256,t_bytes32))"
}, },
{ {
"label": "preimagePartOk", "bytes": "32",
"label": "mapping(bytes32 => mapping(uint256 => bool))",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_mapping(t_bytes32,t_mapping(t_uint256,t_bool))" "type": "t_mapping(t_bytes32,t_mapping(t_uint256,t_bool))"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
......
[ [
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "proxyType", "bytes": "32",
"label": "mapping(address => enum ProxyAdmin.ProxyType)",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_enum(ProxyType)92592)" "type": "t_mapping(t_address,t_enum(ProxyType)92990)"
}, },
{ {
"label": "implementationName", "bytes": "32",
"label": "mapping(address => string)",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_mapping(t_address,t_string_storage)" "type": "t_mapping(t_address,t_string_storage)"
}, },
{ {
"label": "addressManager", "bytes": "20",
"label": "contract AddressManager",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_contract(AddressManager)84130" "type": "t_contract(AddressManager)84528"
}, },
{ {
"label": "upgrading", "bytes": "1",
"label": "bool",
"offset": 20, "offset": 20,
"slot": "3", "slot": "3",
"type": "t_bool" "type": "t_bool"
......
[ [
{ {
"label": "implementationName", "bytes": "32",
"label": "mapping(address => string)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_address,t_string_storage)" "type": "t_mapping(t_address,t_string_storage)"
}, },
{ {
"label": "addressManager", "bytes": "32",
"label": "mapping(address => contract AddressManager)",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_mapping(t_address,t_contract(AddressManager)84130)" "type": "t_mapping(t_address,t_contract(AddressManager)84528)"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "_registry", "bytes": "32",
"label": "mapping(bytes32 => struct SchemaRecord)",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_mapping(t_bytes32,t_struct(SchemaRecord)45881_storage)" "type": "t_mapping(t_bytes32,t_struct(SchemaRecord)57547_storage)"
}, },
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
......
[ [
{ {
"label": "totalProcessed", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint256" "type": "t_uint256"
......
[ [
{ {
"label": "_initialized", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "_initializing", "bytes": "1",
"label": "bool",
"offset": 1, "offset": 1,
"slot": "0", "slot": "0",
"type": "t_bool" "type": "t_bool"
}, },
{ {
"label": "__gap", "bytes": "1600",
"label": "uint256[50]",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_array(t_uint256)50_storage" "type": "t_array(t_uint256)50_storage"
}, },
{ {
"label": "_owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "51", "slot": "51",
"type": "t_address" "type": "t_address"
}, },
{ {
"label": "__gap", "bytes": "1568",
"label": "uint256[49]",
"offset": 0, "offset": 0,
"slot": "52", "slot": "52",
"type": "t_array(t_uint256)49_storage" "type": "t_array(t_uint256)49_storage"
}, },
{ {
"label": "overhead", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "101", "slot": "101",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "scalar", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "102", "slot": "102",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "batcherHash", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "103", "slot": "103",
"type": "t_bytes32" "type": "t_bytes32"
}, },
{ {
"label": "gasLimit", "bytes": "8",
"label": "uint64",
"offset": 0, "offset": 0,
"slot": "104", "slot": "104",
"type": "t_uint64" "type": "t_uint64"
}, },
{ {
"label": "_resourceConfig", "bytes": "32",
"label": "struct ResourceMetering.ResourceConfig",
"offset": 0, "offset": 0,
"slot": "105", "slot": "105",
"type": "t_struct(ResourceConfig)75608_storage" "type": "t_struct(ResourceConfig)76006_storage"
} }
] ]
\ No newline at end of file
[ [
{ {
"label": "owner", "bytes": "20",
"label": "address",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_address" "type": "t_address"
......
[ [
{ {
"label": "_status", "bytes": "32",
"label": "uint256",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_uint256" "type": "t_uint256"
}, },
{ {
"label": "shell", "bytes": "32",
"label": "bytes32",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_bytes32" "type": "t_bytes32"
......
[ [
{ {
"label": "name", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "0", "slot": "0",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "symbol", "bytes": "32",
"label": "string",
"offset": 0, "offset": 0,
"slot": "1", "slot": "1",
"type": "t_string_storage" "type": "t_string_storage"
}, },
{ {
"label": "decimals", "bytes": "1",
"label": "uint8",
"offset": 0, "offset": 0,
"slot": "2", "slot": "2",
"type": "t_uint8" "type": "t_uint8"
}, },
{ {
"label": "balanceOf", "bytes": "32",
"label": "mapping(address => uint256)",
"offset": 0, "offset": 0,
"slot": "3", "slot": "3",
"type": "t_mapping(t_address,t_uint256)" "type": "t_mapping(t_address,t_uint256)"
}, },
{ {
"label": "allowance", "bytes": "32",
"label": "mapping(address => mapping(address => uint256))",
"offset": 0, "offset": 0,
"slot": "4", "slot": "4",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment