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.

Double Rainbow

Verified contract

Proxy

Active on Base with 2,396 txns
Deployed by via 0x69f31cc9 at 4537651
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
-
variable spans 49 additional slots
-
variable spans 49 additional slots
-
variable spans 41 additional slots
-
variable spans 49 additional slots
-
variable spans 49 additional slots
-
variable spans 48 additional slots
-
variable spans 48 additional slots
-
variable spans 1 additional slot
-
variable spans 2 additional slots
2 additional variables
ERC-20
--
0xaa911dc00a08a4d58cb8c0905e31bcf72001eb23a2beef55e0510967cfdb57bf
0xc148bc3e5f28f38fedf926a372183b2800193656f68eb8108bd659de0071d680
0x79ba75b46ab308aeb77e12796b3e0c5ece0d6f9bfe1e1009b3ac857484a20271
0x6c07f43a71bc8ad8f147273208d552de959db8429a9993aa3bfbc3713e20bd8c
0x3d5219ada2965c7450cb34a7e737fe900038012629707fe451e1d76d01e88a58
0x8dc91501b4481d09579773d30d86dd2cf4bf9112126100c14614659210ee9ef7
0x4d593b2dfcb5b88ce411b97b36dec80fd9524f155b32169e067436b42703e044
0xd948e15857c45da7b2c101bbc75126f91b467e24d9eb864a27388ff436d085d5
0xff3b2cd71120ddf5ec3c270110b032097f5a83fe476cf1fcd93fea4624abf182
0xc9adc885d58d570f8cda0dfe9a2d791a47594a587258eba1af079f952348debf

Functions
Getter at block 21977033
DEFAULT_ADMIN_ROLE(view returns (bytes32)
0x0000000000000000000000000000000000000000000000000000000000000000
MINTER_ROLE(view returns (bytes32)
0xf0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc9
SALES_MANAGER_ROLE(view returns (bytes32)
0x5ebbf78043a2215b522b1366a193ec74dd1f54e441e841a87b9653246a9c49a6
config(view returns (address metadataRendereruint64 editionSizeuint16 royaltyBPSaddress fundsRecipient)
(metadataRenderer=0x2008c05685f9fa15bbd75d80e9a44ab0c7230577, editionSize=18446744073709551615, royaltyBPS=500, fundsRecipient=0x7a3d05c70581bd345fe117c06e45f9669205384f)
 
contractURI(view returns (string)
contractVersion(view returns (uint32)
14
createReferral(view returns (address)
0x0000000000000000000000000000000000000000
factoryUpgradeGate(view returns (address)
0x532142ae8e53a5f92b9de1a43f1ffd6ef789e65e
marketFilterDAOAddress(view returns (address)
0x000000000000aaeb6d7670e522a718067333cd4e
metadataRenderer(view returns (address)
0x2008c05685f9fa15bbd75d80e9a44ab0c7230577
name(view returns (string)
Double Rainbow
owner(view returns (address)
0x7a3d05c70581bd345fe117c06e45f9669205384f
 
proxiableUUID(view returns (bytes32)
royaltyMintSchedule(view returns (uint32)
0
saleDetails(view returns (struct IERC721DropSaleDetails)
(true, false, 0, 1698875654, 18446744073709551615, 1694818800, 1730415600, 0x1c38f030e1cd36c0cdd593f6e5c4ec8687ddd451a7a909b28b6fbff087fee81c, 4294967295, 3239, 18446744073709551615)
salesConfig(view returns (uint104 publicSalePriceuint32 maxSalePurchasePerAddressuint64 publicSaleStartuint64 publicSaleEnduint64 presaleStartuint64 presaleEndbytes32 presaleMerkleRoot)
(publicSalePrice=0, maxSalePurchasePerAddress=4294967295, publicSaleStart=1698875654, publicSaleEnd=18446744073709551615, presaleStart=1694818800, presaleEnd=1730415600, presaleMerkleRoot=0x1c38f030e1cd36c0cdd593f6e5c4ec8687ddd451a7a909b28b6fbff087fee81c)
symbol(view returns (string)
$2XRAINBOW
totalSupply(view returns (uint256)
3239
zoraERC721TransferHelper(view returns (address)
0x0000000000000000000000000000000000000000
Read-only
balanceOf(address ownerview returns (uint256)
computeFreeMintRewards(uint256 numTokenspure returns (struct RewardsSettings)
computePaidMintRewards(uint256 numTokenspure returns (struct RewardsSettings)
computeTotalReward(uint256 numTokenspure returns (uint256)
getApproved(uint256 tokenIdview returns (address)
getRoleAdmin(bytes32 roleview returns (bytes32)
hasRole(bytes32 roleaddress accountview returns (bool)
isAdmin(address userview returns (bool)
isApprovedForAll(address nftOwneraddress operatorview returns (bool)
mintedPerAddress(address minterview returns (struct IERC721DropAddressMintDetails)
ownerOf(uint256 tokenIdview returns (address)
presaleMintsByAddress(addressview returns (uint256)
royaltyInfo(uint256uint256 _salePriceview returns (address receiveruint256 royaltyAmount)
supportsInterface(bytes4 interfaceIdview returns (bool)
tokenURI(uint256 tokenIdview returns (string)
zoraFeeForAmount(uint256 quantityview returns (address recipientuint256 fee)
State-modifying
adminMint(address recipientuint256 quantityreturns (uint256)
adminMintAirdrop(address[] recipientsreturns (uint256)
approve(address touint256 tokenId
burn(uint256 tokenId
callMetadataRenderer(bytes datareturns (bytes)
finalizeOpenEdition(
grantRole(bytes32 roleaddress account
initialize(string _contractNamestring _contractSymboladdress _initialOwneraddress _fundsRecipientuint64 _editionSizeuint16 _royaltyBPSbytes[] _setupCallsaddress _metadataRendererbytes _metadataRendererInitaddress _createReferral
manageMarketFilterDAOSubscription(bool enable
mintWithRewards(address recipientuint256 quantitystring commentaddress mintReferralpayable returns (uint256)
multicall(bytes[] datareturns (bytes[] results)
purchase(uint256 quantitypayable returns (uint256)
purchasePresale(uint256 quantityuint256 maxQuantityuint256 pricePerTokenbytes32[] merkleProofpayable returns (uint256)
purchasePresaleWithComment(uint256 quantityuint256 maxQuantityuint256 pricePerTokenbytes32[] merkleProofstring commentpayable returns (uint256)
purchasePresaleWithRewards(uint256 quantityuint256 maxQuantityuint256 pricePerTokenbytes32[] merkleProofstring commentaddress mintReferralpayable returns (uint256)
purchaseWithComment(uint256 quantitystring commentpayable returns (uint256)
purchaseWithRecipient(address recipientuint256 quantitystring commentpayable returns (uint256)
renounceRole(bytes32 roleaddress account
revokeRole(bytes32 roleaddress account
safeTransferFrom(address fromaddress touint256 tokenId
safeTransferFrom(address fromaddress touint256 tokenIdbytes _data
setApprovalForAll(address operatorbool approved
setFundsRecipient(address newRecipientAddress
setMetadataRenderer(address newRendererbytes setupRenderer
setOwner(address newOwner
setSaleConfiguration(uint104 publicSalePriceuint32 maxSalePurchasePerAddressuint64 publicSaleStartuint64 publicSaleEnduint64 presaleStartuint64 presaleEndbytes32 presaleMerkleRoot
transferFrom(address fromaddress touint256 tokenId
updateCreateReferral(address recipient
updateMarketFilterSettings(bytes argsreturns (bytes)
updateRoyaltyMintSchedule(uint32 newSchedule
upgradeTo(address newImplementation
upgradeToAndCall(address newImplementationbytes datapayable 
withdraw(
withdrawRewards(address touint256 amount
Events
AdminChanged(address previousAdminaddress newAdmin
Approval(address indexed owneraddress indexed approveduint256 indexed tokenId
ApprovalForAll(address indexed owneraddress indexed operatorbool approved
BatchMetadataUpdate(uint256 _fromTokenIduint256 _toTokenId
BeaconUpgraded(address indexed beacon
FundsReceived(address indexed sourceuint256 amount
FundsRecipientChanged(address indexed newAddressaddress indexed changedBy
FundsWithdrawn(address indexed withdrawnByaddress indexed withdrawnTouint256 amountaddress feeRecipientuint256 feeAmount
MetadataUpdate(uint256 _tokenId
MintComment(address indexed senderaddress indexed tokenContractuint256 indexed tokenIduint256 quantitystring comment
MintFeePayout(uint256 mintFeeAmountaddress mintFeeRecipientbool success
OpenMintFinalized(address indexed senderuint256 numberOfMints
OwnerCanceled(address indexed previousOwneraddress indexed potentialNewOwner
OwnerPending(address indexed previousOwneraddress indexed potentialNewOwner
OwnershipTransferred(address indexed previousOwneraddress indexed newOwner
RoleAdminChanged(bytes32 indexed rolebytes32 indexed previousAdminRolebytes32 indexed newAdminRole
RoleGranted(bytes32 indexed roleaddress indexed accountaddress indexed sender
RoleRevoked(bytes32 indexed roleaddress indexed accountaddress indexed sender
Sale(address indexed touint256 indexed quantityuint256 indexed pricePerTokenuint256 firstPurchasedTokenId
SalesConfigChanged(address indexed changedBy
Transfer(address indexed fromaddress indexed touint256 indexed tokenId
UpdatedMetadataRenderer(address senderaddress renderer
Upgraded(address indexed implementation
Constructor

This contract contains no constructor objects.

Fallback and receive
receive(
Errors
Access_MissingRoleOrAdmin(bytes32 role
Access_OnlyAdmin(
Access_WithdrawNotAllowed(
Admin_InvalidUpgradeAddress(address proposedAddress
Admin_UnableToFinalizeNotOpenEdition(
ApprovalCallerNotOwnerNorApproved(
ApprovalQueryForNonexistentToken(
ApprovalToCurrentOwner(
ApproveToCaller(
BalanceQueryForZeroAddress(
CREATOR_FUNDS_RECIPIENT_NOT_SET(
ExternalMetadataRenderer_CallFailed(
INVALID_ADDRESS_ZERO(
INVALID_ETH_AMOUNT(
InvalidMintSchedule(
MarketFilterDAOAddressNotSupportedForChain(
MintFee_FundsSendFailure(
MintToZeroAddress(
MintZeroQuantity(
Mint_SoldOut(
ONLY_CREATE_REFERRAL(
ONLY_OWNER(
ONLY_PENDING_OWNER(
OperatorNotAllowed(address operator
OwnerQueryForNonexistentToken(
Presale_Inactive(
Presale_MerkleNotApproved(
Presale_TooManyForAddress(
ProtocolRewards_WithdrawSendFailure(
Purchase_TooManyForAddress(
Purchase_WrongPrice(uint256 correctPrice
RemoteOperatorFilterRegistryCallFailed(
Sale_Inactive(
Setup_RoyaltyPercentageTooHigh(uint16 maxRoyaltyBPS
TransferCallerNotOwnerNorApproved(
TransferFromIncorrectOwner(
TransferToNonERC721ReceiverImplementer(
TransferToZeroAddress(
URIQueryForNonexistentToken(
Withdraw_FundsSendFailure(