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.

IMF

Unverified contract

Proxy

Active on Base with 2,533 txns
Deployed by via 0xa7a0f993 at 14050077
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 48 additional slots
-
variable spans 46 additional slots
-
variable spans 49 additional slots
-
variable spans 49 additional slots
-
variable spans 49 additional slots
-
variable spans 49 additional slots
-
variable spans 49 additional slots
-
variable spans 2 additional slots
-
variable spans 49 additional slots
5 additional variables
ERC-20
--
ERC-20
--
0x3920b98562f6c94e5b8100bc8094e821979f6368983d1a1366cfa61a0decaa2f
0x0bc110092b4c5a676b6b9e60f6abc0e5d111bcc3ba8cebdc40d63c534b2378fa
0x7641caa30cc97d8f76c8bc361841b78ecf74d7bb852d5f9c449634a55ea9feea
0xd87abccb4f40f88cc1e303293caa2d52500e2a8b375c4b333ec3749fcfd4cf1b
0x695c50becdafdab0e20df4d0adba753bc917a3e4eab5994ee9cf6274e5bf3aaa
0xfb36ad604036ce06b6846752e65f81d09ed356022402297c852760ddcf9bf5de
0xb9e38a4fc67d80de40f4715f76e85b4a041942a8f6ac1cd50994d54f3eca3d9a
0x884c2c33fc12ce74e2dd49d6ca2c0072e8d7e0f1b85201e4f0ce196b2a66c2c3
0x97de910ba192668077aef57a09cbcca1d8d7818ae9467f1943831fdae6c294dd
0x19c45f2825fa61c1fbd3cdf278496d1a81010ca00ccfd213bcb87b33e2196c88

Functions
Getter at block 22012774
CONTRACT_BASE_ID(view returns (uint256)
0
PERMISSION_BIT_ADMIN(view returns (uint256)
2
PERMISSION_BIT_FUNDS_MANAGER(view returns (uint256)
32
PERMISSION_BIT_METADATA(view returns (uint256)
16
PERMISSION_BIT_MINTER(view returns (uint256)
4
PERMISSION_BIT_SALES(view returns (uint256)
8
config(view returns (address owneruint96 __gap1address fundsRecipientuint96 __gap2address transferHookuint96 __gap3)
(owner=0x387a161c6b25aa854100abaed39274e51aaffffd, __gap1=0, fundsRecipient=0x387a161c6b25aa854100abaed39274e51aaffffd, __gap2=0, transferHook=0x0000000000000000000000000000000000000000, __gap3=0)
contractURI(view returns (string)
ipfs://bafkreigk6ejxtqbprkaggllx2mbogg6vhugn4rifpviks42ncus6z7awte
contractVersion(pure returns (string)
2.7.0
implementation(view returns (address)
0xaf5a4f6f6640734d7d000321bb27de40d4ae91f6
mintFee(pure returns (uint256)
777000000000000
name(view returns (string)
IMF
nextTokenId(view returns (uint256)
3
owner(view returns (address)
0x387a161c6b25aa854100abaed39274e51aaffffd
 
proxiableUUID(view returns (bytes32)
supportedPremintSignatureVersions(pure returns (string[])
[1, 2]
symbol(pure returns (string)
Read-only
assumeLastTokenIdMatches(uint256 lastTokenIdview 
balanceOf(address accountuint256 idview returns (uint256)
balanceOfBatch(address[] accountsuint256[] idsview returns (uint256[] batchBalances)
computeFreeMintRewards(uint256 numTokenspure returns (struct RewardsSettings)
computePaidMintRewards(uint256 numTokenspure returns (struct RewardsSettings)
computeTotalReward(uint256 numTokenspure returns (uint256)
createReferrals(uint256view returns (address)
customRenderers(uint256view returns (address)
delegatedTokenId(uint32view returns (uint256)
firstMinters(uint256view returns (address)
getCreatorRewardRecipient(uint256 tokenIdview returns (address)
getCustomRenderer(uint256 tokenIdview returns (address customRenderer)
getRoyalties(uint256 tokenIdview returns (struct ICreatorRoyaltiesControlRoyaltyConfiguration)
getTokenInfo(uint256 tokenIdview returns (struct IZoraCreator1155TypesV1TokenData)
isAdminOrRole(address useruint256 tokenIduint256 roleview returns (bool)
isApprovedForAll(address accountaddress operatorview returns (bool)
metadataRendererContract(uint256view returns (address)
permissions(uint256addressview returns (uint256)
royalties(uint256view returns (uint32 royaltyMintScheduleuint32 royaltyBPSaddress royaltyRecipient)
royaltyInfo(uint256 tokenIduint256 salePriceview returns (address receiveruint256 royaltyAmount)
supportsInterface(bytes4 interfaceIdview returns (bool)
uri(uint256 tokenIdview returns (string)
State-modifying
addPermission(uint256 tokenIdaddress useruint256 permissionBits
adminMint(address recipientuint256 tokenIduint256 quantitybytes data
adminMintBatch(address recipientuint256[] tokenIdsuint256[] quantitiesbytes data
burnBatch(address fromuint256[] tokenIdsuint256[] amounts
callRenderer(uint256 tokenIdbytes data
callSale(uint256 tokenIdaddress salesConfigbytes data
delegateSetupNewToken(bytes premintConfigbytes32 premintVersionbytes signatureaddress senderreturns (uint256 newTokenId)
initialize(string contractNamestring newContractURIstruct ICreatorRoyaltiesControlRoyaltyConfiguration defaultRoyaltyConfigurationaddress defaultAdminbytes[] setupActions
mint(address minteruint256 tokenIduint256 quantityaddress[] rewardsRecipientsbytes minterArgumentspayable 
mintWithRewards(address minteruint256 tokenIduint256 quantitybytes minterArgumentsaddress mintReferralpayable 
multicall(bytes[] datareturns (bytes[] results)
removePermission(uint256 tokenIdaddress useruint256 permissionBits
safeBatchTransferFrom(address fromaddress touint256[] idsuint256[] amountsbytes data
safeTransferFrom(address fromaddress touint256 iduint256 amountbytes data
setApprovalForAll(address operatorbool approved
setFundsRecipient(address fundsRecipient
setOwner(address newOwner
setTokenMetadataRenderer(uint256 tokenIdaddress renderer
setTransferHook(address transferHook
setupNewToken(string newURIuint256 maxSupplyreturns (uint256)
setupNewTokenWithCreateReferral(string newURIuint256 maxSupplyaddress createReferralreturns (uint256)
updateContractMetadata(string _newURIstring _newName
updateCreateReferral(uint256 tokenIdaddress recipient
updateRoyaltiesForToken(uint256 tokenIdstruct ICreatorRoyaltiesControlRoyaltyConfiguration newConfiguration
updateTokenURI(uint256 tokenIdstring _newURI
upgradeTo(address newImplementation
upgradeToAndCall(address newImplementationbytes datapayable 
withdraw(
Events
AdminChanged(address previousAdminaddress newAdmin
ApprovalForAll(address indexed accountaddress indexed operatorbool approved
BeaconUpgraded(address indexed beacon
ConfigUpdated(address indexed updateruint8 indexed updateTypestruct IZoraCreator1155TypesV1ContractConfig newConfig
ContractMetadataUpdated(address indexed updaterstring uristring name
ContractRendererUpdated(address renderer
CreatorAttribution(bytes32 structHashstring domainNamestring versionaddress creatorbytes signature
Initialized(uint8 version
OwnershipTransferred(address lastOwneraddress newOwner
Purchased(address indexed senderaddress indexed minteruint256 indexed tokenIduint256 quantityuint256 value
RendererUpdated(uint256 indexed tokenIdaddress indexed rendereraddress indexed user
SetupNewToken(uint256 indexed tokenIdaddress indexed senderstring newURIuint256 maxSupply
TransferBatch(address indexed operatoraddress indexed fromaddress indexed touint256[] idsuint256[] values
TransferSingle(address indexed operatoraddress indexed fromaddress indexed touint256 iduint256 value
URI(string valueuint256 indexed id
UpdatedPermissions(uint256 indexed tokenIdaddress indexed useruint256 indexed permissions
UpdatedRoyalties(uint256 indexed tokenIdaddress indexed userstruct ICreatorRoyaltiesControlRoyaltyConfiguration configuration
UpdatedToken(address indexed fromuint256 indexed tokenIdstruct IZoraCreator1155TypesV1TokenData tokenData
Upgraded(address indexed implementation
Constructor

This contract contains no constructor objects.

Fallback and receive
receive(
Errors
ADDRESS_DELEGATECALL_TO_NON_CONTRACT(
ADDRESS_LOW_LEVEL_CALL_FAILED(
Burn_NotOwnerOrApproved(address operatoraddress user
CREATOR_FUNDS_RECIPIENT_NOT_SET(
CallFailed(bytes reason
Call_TokenIdMismatch(
CallerNotZoraCreator1155(
CannotMintMoreTokens(uint256 tokenIduint256 quantityuint256 totalMinteduint256 maxSupply
Config_TransferHookNotSupported(address proposedAddress
ERC1155_ACCOUNTS_AND_IDS_LENGTH_MISMATCH(
ERC1155_ADDRESS_ZERO_IS_NOT_A_VALID_OWNER(
ERC1155_BURN_AMOUNT_EXCEEDS_BALANCE(
ERC1155_BURN_FROM_ZERO_ADDRESS(
ERC1155_CALLER_IS_NOT_TOKEN_OWNER_OR_APPROVED(
ERC1155_ERC1155RECEIVER_REJECTED_TOKENS(
ERC1155_IDS_AND_AMOUNTS_LENGTH_MISMATCH(
ERC1155_INSUFFICIENT_BALANCE_FOR_TRANSFER(
ERC1155_MINT_TO_ZERO_ADDRESS(
ERC1155_SETTING_APPROVAL_FOR_SELF(
ERC1155_TRANSFER_TO_NON_ERC1155RECEIVER_IMPLEMENTER(
ERC1155_TRANSFER_TO_ZERO_ADDRESS(
ERC1967_NEW_IMPL_NOT_CONTRACT(
ERC1967_NEW_IMPL_NOT_UUPS(
ERC1967_UNSUPPORTED_PROXIABLEUUID(
ETHWithdrawFailed(address recipientuint256 amount
FUNCTION_MUST_BE_CALLED_THROUGH_ACTIVE_PROXY(
FUNCTION_MUST_BE_CALLED_THROUGH_DELEGATECALL(
FundsWithdrawInsolvent(uint256 amountuint256 contractValue
INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED(
INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING(
INVALID_ADDRESS_ZERO(
INVALID_ETH_AMOUNT(
InvalidMerkleProof(address mintTobytes32[] merkleProofbytes32 merkleRoot
InvalidMintSchedule(
InvalidSignatureVersion(
MintNotYetStarted(
Mint_InsolventSaleTransfer(
Mint_TokenIDMintNotAllowed(
Mint_UnknownCommand(
Mint_ValueTransferFail(
MinterContractAlreadyExists(
MinterContractDoesNotExist(
NewOwnerNeedsToBeAdmin(
NoRendererForToken(uint256 tokenId
ONLY_CREATE_REFERRAL(
PremintDeleted(
ProtocolRewardsWithdrawFailed(address calleraddress recipientuint256 amount
RendererNotValid(address renderer
Renderer_NotValidRendererContract(
SaleEnded(
SaleHasNotStarted(
Sale_CannotCallNonSalesContract(address targetContract
TokenIdMismatch(uint256 expecteduint256 actual
UUPS_UPGRADEABLE_MUST_NOT_BE_CALLED_THROUGH_DELEGATECALL(
UserExceedsMintLimit(address useruint256 limituint256 requestedAmount
UserMissingRoleForToken(address useruint256 tokenIduint256 role
WrongValueSent(