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.

friendtech

Unverified contract

Proxy

Active on Base with 21,271 txns
Deployed by via 0xc6737bc5 at 13805726
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
Value $0
ERC-20
--
ERC-20
--
0xc4f0d38c32e7493e434d5991d2c364c6433109f509a30859a5e387a163f2c54f
0x363faa278c9c0d3da72f74c2f9eac06776b1f8c36dcfe3a8acfdcaad1c025aa5
0x36f2ef775c8d179facbd41332c06404e1c3e5899523c609d67174e38a156470e
0x864ef06f09ad9656a8e23fd8e732e20969daa0601ffcd30a22f711515676f470
0x272e13a74545d16042dd8e2aba693d4335b83c92247fbf86e61f58b05a769f81
0xd8fe6d3ffbba50a8d9d5b411f073efcb1dace321d680526ca098583787a975ee
0x282c977b82a4f108b4106a7913c8776b5431de4bfc7d34dc8667fdf0c1481718
0x71eeef377938006c62b6e621d6f1349b91d5a9f83cf161cb03094efd4c235c9b
0xaf9085ab67bcf55484f2249efd4ffabfa53b427be764741bfd3d4bf16d82d43a
0x85f5960f092080e5e6c48af80f7568ce676f133fb9d96d4a984bc930315de314

Functions
Getter at block 22743038
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=0x6bab38ed8e3c942dcc287be471d651055b615c7e, __gap1=0, fundsRecipient=0x6bab38ed8e3c942dcc287be471d651055b615c7e, __gap2=0, transferHook=0x0000000000000000000000000000000000000000, __gap3=0)
contractURI(view returns (string)
ipfs://bafkreicv77yy4ihlcelal3udwx36rb4fxems3xzd7mtencmedyxviubrna
contractVersion(pure returns (string)
2.7.0
implementation(view returns (address)
0xaf5a4f6f6640734d7d000321bb27de40d4ae91f6
mintFee(pure returns (uint256)
777000000000000
name(view returns (string)
friendtech
nextTokenId(view returns (uint256)
3
owner(view returns (address)
0x6bab38ed8e3c942dcc287be471d651055b615c7e
 
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(