[{ "name": "MeemContractInfoSet", "type": "event", "inputs": [{ "name": "contractAddress", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "name": "MeemContractInitialized", "type": "event", "inputs": [{ "name": "contractAddress", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "name": "MeemContractURISet", "type": "event", "inputs": [{ "name": "contractAddress", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "name": "contractURI", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "string", "internalType": "string" }], "stateMutability": "view" }, { "name": "getContractInfo", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "tuple", "components": [{ "name": "symbol", "type": "string", "internalType": "string" }, { "name": "name", "type": "string", "internalType": "string" }, { "name": "contractURI", "type": "string", "internalType": "string" }, { "name": "maxSupply", "type": "uint256", "internalType": "uint256" }, { "name": "mintPermissions", "type": "tuple[]", "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }, { "name": "splits", "type": "tuple[]", "components": [{ "name": "toAddress", "type": "address", "internalType": "address" }, { "name": "amount", "type": "uint256", "internalType": "uint256" }, { "name": "lockedBy", "type": "address", "internalType": "address" }], "internalType": "struct Split[]" }, { "name": "isTransferLocked", "type": "bool", "internalType": "bool" }], "internalType": "struct ContractInfo" }], "stateMutability": "view" }, { "name": "initialize", "type": "function", "inputs": [{ "name": "params", "type": "tuple", "components": [{ "name": "symbol", "type": "string", "internalType": "string" }, { "name": "name", "type": "string", "internalType": "string" }, { "name": "contractURI", "type": "string", "internalType": "string" }, { "name": "roles", "type": "tuple[]", "components": [{ "name": "user", "type": "address", "internalType": "address" }, { "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "hasRole", "type": "bool", "internalType": "bool" }], "internalType": "struct SetRoleItem[]" }, { "name": "maxSupply", "type": "uint256", "internalType": "uint256" }, { "name": "mintPermissions", "type": "tuple[]", "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }, { "name": "splits", "type": "tuple[]", "components": [{ "name": "toAddress", "type": "address", "internalType": "address" }, { "name": "amount", "type": "uint256", "internalType": "uint256" }, { "name": "lockedBy", "type": "address", "internalType": "address" }], "internalType": "struct Split[]" }, { "name": "isTransferLocked", "type": "bool", "internalType": "bool" }], "internalType": "struct InitParams" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "reinitialize", "type": "function", "inputs": [{ "name": "params", "type": "tuple", "components": [{ "name": "symbol", "type": "string", "internalType": "string" }, { "name": "name", "type": "string", "internalType": "string" }, { "name": "contractURI", "type": "string", "internalType": "string" }, { "name": "roles", "type": "tuple[]", "components": [{ "name": "user", "type": "address", "internalType": "address" }, { "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "hasRole", "type": "bool", "internalType": "bool" }], "internalType": "struct SetRoleItem[]" }, { "name": "maxSupply", "type": "uint256", "internalType": "uint256" }, { "name": "mintPermissions", "type": "tuple[]", "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }, { "name": "splits", "type": "tuple[]", "components": [{ "name": "toAddress", "type": "address", "internalType": "address" }, { "name": "amount", "type": "uint256", "internalType": "uint256" }, { "name": "lockedBy", "type": "address", "internalType": "address" }], "internalType": "struct Split[]" }, { "name": "isTransferLocked", "type": "bool", "internalType": "bool" }], "internalType": "struct InitParams" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setContractInfo", "type": "function", "inputs": [{ "name": "name", "type": "string", "internalType": "string" }, { "name": "symbol", "type": "string", "internalType": "string" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setContractInfo", "type": "function", "inputs": [{ "name": "name", "type": "string", "internalType": "string" }, { "name": "symbol", "type": "string", "internalType": "string" }, { "name": "newContractURI", "type": "string", "internalType": "string" }, { "name": "maxSupply", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setContractInfo", "type": "function", "inputs": [{ "name": "name", "type": "string", "internalType": "string" }, { "name": "symbol", "type": "string", "internalType": "string" }, { "name": "newContractURI", "type": "string", "internalType": "string" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setContractURI", "type": "function", "inputs": [{ "name": "newContractURI", "type": "string", "internalType": "string" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "MeemAdminContractSet", "type": "event", "inputs": [{ "name": "adminContract", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "name": "MeemRoleGranted", "type": "event", "inputs": [{ "name": "role", "type": "bytes32", "indexed": true, "internalType": "bytes32" }, { "name": "user", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "name": "MeemRoleRevoked", "type": "event", "inputs": [{ "name": "role", "type": "bytes32", "indexed": true, "internalType": "bytes32" }, { "name": "user", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "name": "ADMIN_ROLE", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], "stateMutability": "pure" }, { "name": "UPGRADER_ROLE", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], "stateMutability": "pure" }, { "name": "adminContract", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "name": "bulkSetRoles", "type": "function", "inputs": [{ "name": "items", "type": "tuple[]", "components": [{ "name": "user", "type": "address", "internalType": "address" }, { "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "hasRole", "type": "bool", "internalType": "bool" }], "internalType": "struct SetRoleItem[]" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "canUpgradeContract", "type": "function", "inputs": [{ "name": "upgrader", "type": "address", "internalType": "address" }], "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], "stateMutability": "view" }, { "name": "getRoles", "type": "function", "inputs": [{ "name": "role", "type": "bytes32", "internalType": "bytes32" }], "outputs": [{ "name": "", "type": "address[]", "internalType": "address[]" }], "stateMutability": "view" }, { "name": "grantRole", "type": "function", "inputs": [{ "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "user", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "hasAssignedRole", "type": "function", "inputs": [{ "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "user", "type": "address", "internalType": "address" }], "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], "stateMutability": "view" }, { "name": "hasRole", "type": "function", "inputs": [{ "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "user", "type": "address", "internalType": "address" }], "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], "stateMutability": "view" }, { "name": "requireRole", "type": "function", "inputs": [{ "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "user", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "view" }, { "name": "revokeRole", "type": "function", "inputs": [{ "name": "role", "type": "bytes32", "internalType": "bytes32" }, { "name": "user", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setAdminContract", "type": "function", "inputs": [{ "name": "newAdminContract", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "Approval", "type": "event", "inputs": [{ "name": "owner", "type": "address", "indexed": true, "internalType": "address" }, { "name": "operator", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenId", "type": "uint256", "indexed": true, "internalType": "uint256" }], "anonymous": false }, { "name": "ApprovalForAll", "type": "event", "inputs": [{ "name": "owner", "type": "address", "indexed": true, "internalType": "address" }, { "name": "operator", "type": "address", "indexed": true, "internalType": "address" }, { "name": "approved", "type": "bool", "indexed": false, "internalType": "bool" }], "anonymous": false }, { "name": "MeemTransfer", "type": "event", "inputs": [{ "name": "from", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenId", "type": "uint256", "indexed": true, "internalType": "uint256" }], "anonymous": false }, { "name": "Transfer", "type": "event", "inputs": [{ "name": "from", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenId", "type": "uint256", "indexed": true, "internalType": "uint256" }], "anonymous": false }, { "name": "approve", "type": "function", "inputs": [{ "name": "operator", "type": "address", "internalType": "address" }, { "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "payable" }, { "name": "balanceOf", "type": "function", "inputs": [{ "name": "account", "type": "address", "internalType": "address" }], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "name": "bulkBurn", "type": "function", "inputs": [{ "name": "tokenIds", "type": "uint256[]", "internalType": "uint256[]" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "bulkMint", "type": "function", "inputs": [{ "name": "bulkParams", "type": "tuple[]", "components": [{ "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenURI", "type": "string", "internalType": "string" }, { "name": "tokenType", "type": "uint8", "internalType": "enum TokenType" }], "internalType": "struct MintParameters[]" }], "outputs": [], "stateMutability": "payable" }, { "name": "burn", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "getApproved", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "name": "getMeem", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "tuple", "components": [{ "name": "owner", "type": "address", "internalType": "address" }, { "name": "tokenType", "type": "uint8", "internalType": "enum TokenType" }, { "name": "mintedBy", "type": "address", "internalType": "address" }, { "name": "mintedAt", "type": "uint256", "internalType": "uint256" }], "internalType": "struct Meem" }], "stateMutability": "view" }, { "name": "handleSaleDistribution", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }, { "name": "msgSender", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "payable" }, { "name": "isApprovedForAll", "type": "function", "inputs": [{ "name": "account", "type": "address", "internalType": "address" }, { "name": "operator", "type": "address", "internalType": "address" }], "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], "stateMutability": "view" }, { "name": "mint", "type": "function", "inputs": [{ "name": "params", "type": "tuple", "components": [{ "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenURI", "type": "string", "internalType": "string" }, { "name": "tokenType", "type": "uint8", "internalType": "enum TokenType" }], "internalType": "struct MintParameters" }], "outputs": [], "stateMutability": "payable" }, { "name": "mintWithProof", "type": "function", "inputs": [{ "name": "params", "type": "tuple", "components": [{ "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenURI", "type": "string", "internalType": "string" }, { "name": "tokenType", "type": "uint8", "internalType": "enum TokenType" }, { "name": "proof", "type": "bytes32[]", "internalType": "bytes32[]" }], "internalType": "struct MintWithProofParameters" }], "outputs": [], "stateMutability": "payable" }, { "name": "name", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "string", "internalType": "string" }], "stateMutability": "view" }, { "name": "ownerOf", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "name": "requireCanMint", "type": "function", "inputs": [{ "name": "params", "type": "tuple", "components": [{ "name": "minter", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }, { "name": "proof", "type": "bytes32[]", "internalType": "bytes32[]" }], "internalType": "struct RequireCanMintParams" }], "outputs": [], "stateMutability": "payable" }, { "name": "requireCanTransfer", "type": "function", "inputs": [{ "name": "msgSender", "type": "address", "internalType": "address" }, { "name": "from", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "requireTokenAdmin", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }, { "name": "addy", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "view" }, { "name": "safeTransferFrom", "type": "function", "inputs": [{ "name": "from", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "payable" }, { "name": "safeTransferFrom", "type": "function", "inputs": [{ "name": "from", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenId", "type": "uint256", "internalType": "uint256" }, { "name": "data", "type": "bytes", "internalType": "bytes" }], "outputs": [], "stateMutability": "payable" }, { "name": "setApprovalForAll", "type": "function", "inputs": [{ "name": "operator", "type": "address", "internalType": "address" }, { "name": "status", "type": "bool", "internalType": "bool" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "supportsInterface", "type": "function", "inputs": [{ "name": "interfaceId", "type": "bytes4", "internalType": "bytes4" }], "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], "stateMutability": "view" }, { "name": "symbol", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "string", "internalType": "string" }], "stateMutability": "view" }, { "name": "tokenByIndex", "type": "function", "inputs": [{ "name": "index", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "name": "tokenOfOwnerByIndex", "type": "function", "inputs": [{ "name": "owner", "type": "address", "internalType": "address" }, { "name": "index", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "name": "tokenURI", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "string", "internalType": "string" }], "stateMutability": "view" }, { "name": "totalSupply", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "name": "transferFrom", "type": "function", "inputs": [{ "name": "from", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }, { "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "payable" }, { "name": "MeemMaxSupplyLocked", "type": "event", "inputs": [], "anonymous": false }, { "name": "MeemMaxSupplySet", "type": "event", "inputs": [{ "name": "maxSupply", "type": "uint256", "indexed": false, "internalType": "uint256" }], "anonymous": false }, { "name": "MeemMintPermissionsSet", "type": "event", "inputs": [{ "name": "mintPermissions", "type": "tuple[]", "indexed": false, "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }], "anonymous": false }, { "name": "MINTER_ROLE", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], "stateMutability": "pure" }, { "name": "maxSupply", "type": "function", "inputs": [], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "name": "setIsTransferrable", "type": "function", "inputs": [{ "name": "isTransferrable", "type": "bool", "internalType": "bool" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setMaxSupply", "type": "function", "inputs": [{ "name": "newMaxSupply", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setMintingPermissions", "type": "function", "inputs": [{ "name": "newPermissions", "type": "tuple[]", "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "validatePermissions", "type": "function", "inputs": [{ "name": "basePermissions", "type": "tuple[]", "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }, { "name": "overridePermissions", "type": "tuple[]", "components": [{ "name": "permission", "type": "uint8", "internalType": "enum Permission" }, { "name": "addresses", "type": "address[]", "internalType": "address[]" }, { "name": "numTokens", "type": "uint256", "internalType": "uint256" }, { "name": "costWei", "type": "uint256", "internalType": "uint256" }, { "name": "mintStartTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "mintEndTimestamp", "type": "uint256", "internalType": "uint256" }, { "name": "merkleRoot", "type": "bytes32", "internalType": "bytes32" }], "internalType": "struct MeemPermission[]" }], "outputs": [], "stateMutability": "pure" }, { "name": "MeemSplitsSet", "type": "event", "inputs": [{ "name": "tokenId", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "splits", "type": "tuple[]", "indexed": false, "components": [{ "name": "toAddress", "type": "address", "internalType": "address" }, { "name": "amount", "type": "uint256", "internalType": "uint256" }, { "name": "lockedBy", "type": "address", "internalType": "address" }], "internalType": "struct Split[]" }], "anonymous": false }, { "name": "RoyaltiesSet", "type": "event", "inputs": [{ "name": "tokenId", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "royalties", "type": "tuple[]", "indexed": false, "components": [{ "name": "account", "type": "address", "internalType": "address payable" }, { "name": "value", "type": "uint96", "internalType": "uint96" }], "internalType": "struct Part[]" }], "anonymous": false }, { "name": "getRaribleV2Royalties", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "", "type": "tuple[]", "components": [{ "name": "account", "type": "address", "internalType": "address payable" }, { "name": "value", "type": "uint96", "internalType": "uint96" }], "internalType": "struct Part[]" }], "stateMutability": "view" }, { "name": "lockSplits", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }], "outputs": [], "stateMutability": "nonpayable" }, { "name": "setSplits", "type": "function", "inputs": [{ "name": "tokenId", "type": "uint256", "internalType": "uint256" }, { "name": "splits", "type": "tuple[]", "components": [{ "name": "toAddress", "type": "address", "internalType": "address" }, { "name": "amount", "type": "uint256", "internalType": "uint256" }, { "name": "lockedBy", "type": "address", "internalType": "address" }], "internalType": "struct Split[]" }], "outputs": [], "stateMutability": "nonpayable" }]
