@zoralabs/comments-contracts 0.0.2-COMMENTS.0 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +59 -53
- package/CHANGELOG.md +2 -3
- package/abis/AddDelegateCommenterRole.json +0 -13
- package/abis/CommentsTest.json +28 -0
- package/abis/Comments_smartWallet.json +35 -0
- package/abis/DeployCallerAndCommenterImpl.json +0 -13
- package/abis/DeployImpl.json +0 -13
- package/abis/DeployNonDeterministic.json +0 -13
- package/abis/DeployScript.json +0 -13
- package/abis/GenerateDeterministicParams.json +0 -13
- package/abis/ICoinComments.json +53 -0
- package/abis/IProtocolRewards.json +18 -0
- package/abis/MockCoin.json +395 -0
- package/addresses/1.json +9 -0
- package/addresses/10.json +4 -4
- package/addresses/11155111.json +3 -3
- package/addresses/42161.json +4 -4
- package/addresses/7777777.json +5 -5
- package/addresses/81457.json +9 -0
- package/addresses/8453.json +4 -4
- package/addresses/84532.json +4 -4
- package/addresses/999999999.json +3 -3
- package/dist/index.cjs +130 -130
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +130 -130
- package/dist/index.js.map +1 -1
- package/dist/wagmiGenerated.d.ts +65 -65
- package/package/wagmiGenerated.ts +65 -65
- package/package.json +10 -9
- package/script/CommentsDeployerBase.sol +1 -0
- package/script/DeployCallerAndCommenterImpl.s.sol +2 -0
- package/src/CommentsImpl.sol +48 -15
- package/src/interfaces/ICoinComments.sol +8 -0
- package/src/utils/CallerAndCommenterImpl.sol +2 -2
- package/src/version/ContractVersionBase.sol +1 -1
- package/test/Comments.t.sol +66 -0
- package/test/CommentsTestBase.sol +7 -0
- package/test/Comments_permit.t.sol +1 -1
- package/test/Comments_smartWallet.t.sol +97 -0
- package/test/mocks/MockCoin.sol +42 -0
- package/abis/CommentsDeployerBase.json +0 -15
- package/abis/ProxyDeployerScript.json +0 -15
- package/script/bundle-abis.ts +0 -109
- package/script/update-contract-version.ts +0 -63
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../package/index.ts","../package/wagmiGenerated.ts"],"sourcesContent":["// the below files are auto-generated and will be\n// built at build time. They are not checked in to git.\n// The can be generated by running `yarn prepack` in the root\nexport * from \"./wagmiGenerated\";\n","//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// CallerAndCommenterImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const callerAndCommenterImplABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n { name: '_comments', internalType: 'address', type: 'address' },\n { name: '_zoraTimedSale', internalType: 'address', type: 'address' },\n { name: '_swapHelper', internalType: 'address', type: 'address' },\n { name: '_sparksValue', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'acceptOwnership',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n {\n name: 'excessRefundRecipient',\n internalType: 'address payable',\n type: 'address',\n },\n { name: 'maxEthToSpend', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'buyOnSecondaryAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'comments',\n outputs: [\n { name: '', internalType: 'contract IComments', type: 'address' },\n ],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractName',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitBuyOnSecondaryAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'maxEthToSpend', internalType: 'uint256', type: 'uint256' },\n {\n name: 'sqrtPriceLimitX96',\n internalType: 'uint160',\n type: 'uint160',\n },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitBuyOnSecondaryAndComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitTimedSaleMintAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitTimedSaleMintAndComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'nonceUsed',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'pendingOwner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitBuyOnSecondaryAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'maxEthToSpend', internalType: 'uint256', type: 'uint256' },\n {\n name: 'sqrtPriceLimitX96',\n internalType: 'uint160',\n type: 'uint160',\n },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitBuyOnSecondaryAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitTimedSaleMintAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitTimedSaleMintAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'secondarySwap',\n outputs: [\n { name: '', internalType: 'contract ISecondarySwap', type: 'address' },\n ],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'recipient', internalType: 'address payable', type: 'address' },\n { name: 'minEthToAcquire', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'sellOnSecondaryAndComment',\n outputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'sparkValue',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'timedSaleMintAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'zoraTimedSale',\n outputs: [\n {\n name: '',\n internalType: 'contract IZoraTimedSaleStrategy',\n type: 'address',\n },\n ],\n },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'quantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n { name: 'text', internalType: 'string', type: 'string', indexed: false },\n ],\n name: 'MintedAndCommented',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferStarted',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'quantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: true,\n },\n {\n name: 'comment',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n {\n name: 'swapDirection',\n internalType: 'enum ICallerAndCommenter.SwapDirection',\n type: 'uint8',\n indexed: true,\n },\n ],\n name: 'SwappedOnSecondaryAndCommented',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [\n { name: 'expected', internalType: 'address', type: 'address' },\n { name: 'actual', internalType: 'address', type: 'address' },\n ],\n name: 'CommenterMismatch',\n },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n {\n type: 'error',\n inputs: [{ name: 'deadline', internalType: 'uint256', type: 'uint256' }],\n name: 'ERC2612ExpiredSignature',\n },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n {\n type: 'error',\n inputs: [\n {\n name: 'wrongDestinationChainId',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'IncorrectDestinationChain',\n },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'currentNonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'InvalidAccountNonce',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidSignature' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n {\n type: 'error',\n inputs: [\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'SaleNotSet',\n },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n {\n type: 'error',\n inputs: [\n { name: 'currentName', internalType: 'string', type: 'string' },\n { name: 'newName', internalType: 'string', type: 'string' },\n ],\n name: 'UpgradeToMismatchedContractName',\n },\n {\n type: 'error',\n inputs: [\n { name: 'expected', internalType: 'uint256', type: 'uint256' },\n { name: 'actual', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'WrongValueSent',\n },\n] as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// CommentsImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const commentsImplABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n { name: '_sparkValue', internalType: 'uint256', type: 'uint256' },\n { name: '_protocolRewards', internalType: 'address', type: 'address' },\n { name: '_zoraRecipient', internalType: 'address', type: 'address' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'BACKFILLER_ROLE',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'DEFAULT_ADMIN_ROLE',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'DELEGATE_COMMENTER',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'DOMAIN_NAME',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'DOMAIN_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'PERMISSION_BIT_ADMIN',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'REFERRER_REWARD_PCT',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'ZORA_REWARD_NO_REFERRER_PCT',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'ZORA_REWARD_PCT',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifiers',\n internalType: 'struct IComments.CommentIdentifier[]',\n type: 'tuple[]',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'texts', internalType: 'string[]', type: 'string[]' },\n { name: 'timestamps', internalType: 'uint256[]', type: 'uint256[]' },\n {\n name: 'originalTransactionHashes',\n internalType: 'bytes32[]',\n type: 'bytes32[]',\n },\n ],\n name: 'backfillBatchAddComment',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'text', internalType: 'string', type: 'string' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n {\n name: 'commenterSmartWallet',\n internalType: 'address',\n type: 'address',\n },\n { name: 'referrer', internalType: 'address', type: 'address' },\n ],\n name: 'comment',\n outputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'commentSparksQuantity',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractName',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'text', internalType: 'string', type: 'string' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n {\n name: 'commenterSmartWalletOwner',\n internalType: 'address',\n type: 'address',\n },\n { name: 'referrer', internalType: 'address', type: 'address' },\n ],\n name: 'delegateComment',\n outputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'commentId', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'role', internalType: 'bytes32', type: 'bytes32' }],\n name: 'getRoleAdmin',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'account', internalType: 'address', type: 'address' },\n ],\n name: 'grantRole',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'account', internalType: 'address', type: 'address' },\n ],\n name: 'hasRole',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'hashAndCheckCommentExists',\n outputs: [\n { name: 'commentId', internalType: 'bytes32', type: 'bytes32' },\n { name: 'exists', internalType: 'bool', type: 'bool' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'hashAndValidateCommentExists',\n outputs: [{ name: 'commentId', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'hashCommentIdentifier',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'commenterSmartWallet',\n internalType: 'address',\n type: 'address',\n },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'text', internalType: 'string', type: 'string' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitSparkComment',\n type: 'tuple',\n components: [\n {\n name: 'comment',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'sparker', internalType: 'address', type: 'address' },\n { name: 'sparksQuantity', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitSparkComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'implementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'defaultAdmin', internalType: 'address', type: 'address' },\n { name: 'backfiller', internalType: 'address', type: 'address' },\n {\n name: 'delegateCommenters',\n internalType: 'address[]',\n type: 'address[]',\n },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'nextNonce',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'nonceUsed',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'commenterSmartWallet',\n internalType: 'address',\n type: 'address',\n },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'text', internalType: 'string', type: 'string' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitComment',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitSparkComment',\n type: 'tuple',\n components: [\n {\n name: 'comment',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'sparker', internalType: 'address', type: 'address' },\n { name: 'sparksQuantity', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitSparkComment',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'protocolRewards',\n outputs: [\n { name: '', internalType: 'contract IProtocolRewards', type: 'address' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'callerConfirmation', internalType: 'address', type: 'address' },\n ],\n name: 'renounceRole',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'account', internalType: 'address', type: 'address' },\n ],\n name: 'revokeRole',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'sparksQuantity', internalType: 'uint256', type: 'uint256' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n ],\n name: 'sparkComment',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'sparkValue',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n { name: 'text', internalType: 'string', type: 'string', indexed: false },\n {\n name: 'timestamp',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'originalTransactionId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: false,\n },\n ],\n name: 'BackfilledComment',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'replyToId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: false,\n },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'sparksQuantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n { name: 'text', internalType: 'string', type: 'string', indexed: false },\n {\n name: 'timestamp',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'referrer',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'Commented',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },\n {\n name: 'previousAdminRole',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'newAdminRole',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n ],\n name: 'RoleAdminChanged',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },\n {\n name: 'account',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'RoleGranted',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },\n {\n name: 'account',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'RoleRevoked',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'sparksQuantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'sparker',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'timestamp',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'referrer',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'SparkedComment',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n { type: 'error', inputs: [], name: 'AccessControlBadConfirmation' },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'neededRole', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'AccessControlUnauthorizedAccount',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n { type: 'error', inputs: [], name: 'AddressZero' },\n { type: 'error', inputs: [], name: 'ArrayLengthMismatch' },\n { type: 'error', inputs: [], name: 'CannotSparkOwnComment' },\n {\n type: 'error',\n inputs: [\n { name: 'commentAddress', internalType: 'address', type: 'address' },\n { name: 'commentTokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'replyAddress', internalType: 'address', type: 'address' },\n { name: 'replyTokenId', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'CommentAddressOrTokenIdsDoNotMatch',\n },\n { type: 'error', inputs: [], name: 'CommentDoesntExist' },\n {\n type: 'error',\n inputs: [\n { name: 'expected', internalType: 'address', type: 'address' },\n { name: 'actual', internalType: 'address', type: 'address' },\n ],\n name: 'CommenterMismatch',\n },\n {\n type: 'error',\n inputs: [{ name: 'commentId', internalType: 'bytes32', type: 'bytes32' }],\n name: 'DuplicateComment',\n },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n {\n type: 'error',\n inputs: [{ name: 'deadline', internalType: 'uint256', type: 'uint256' }],\n name: 'ERC2612ExpiredSignature',\n },\n { type: 'error', inputs: [], name: 'EmptyComment' },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n {\n type: 'error',\n inputs: [\n {\n name: 'wrongDestinationChainId',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'IncorrectDestinationChain',\n },\n {\n type: 'error',\n inputs: [\n { name: 'actual', internalType: 'uint256', type: 'uint256' },\n { name: 'expected', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'IncorrectETHAmountForSparks',\n },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'currentNonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'InvalidAccountNonce',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidSignature' },\n { type: 'error', inputs: [], name: 'MustSendAtLeastOneSpark' },\n { type: 'error', inputs: [], name: 'NoFundsRecipient' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'NotSmartWallet' },\n { type: 'error', inputs: [], name: 'NotSmartWalletOwner' },\n { type: 'error', inputs: [], name: 'NotTokenHolderOrAdmin' },\n { type: 'error', inputs: [], name: 'OnlySparksContract' },\n { type: 'error', inputs: [], name: 'TransferFailed' },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n {\n type: 'error',\n inputs: [\n { name: 'currentName', internalType: 'string', type: 'string' },\n { name: 'newName', internalType: 'string', type: 'string' },\n ],\n name: 'UpgradeToMismatchedContractName',\n },\n] as const\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../package/index.ts","../package/wagmiGenerated.ts"],"sourcesContent":["// the below files are auto-generated and will be\n// built at build time. They are not checked in to git.\n// The can be generated by running `yarn prepack` in the root\nexport * from \"./wagmiGenerated\";\n","//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// CallerAndCommenterImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const callerAndCommenterImplABI = [\n {\n type: 'constructor',\n inputs: [\n { name: '_comments', internalType: 'address', type: 'address' },\n { name: '_zoraTimedSale', internalType: 'address', type: 'address' },\n { name: '_swapHelper', internalType: 'address', type: 'address' },\n { name: '_sparksValue', internalType: 'uint256', type: 'uint256' },\n ],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'acceptOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n {\n name: 'excessRefundRecipient',\n internalType: 'address payable',\n type: 'address',\n },\n { name: 'maxEthToSpend', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'buyOnSecondaryAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'comments',\n outputs: [\n { name: '', internalType: 'contract IComments', type: 'address' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractName',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitBuyOnSecondaryAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'maxEthToSpend', internalType: 'uint256', type: 'uint256' },\n {\n name: 'sqrtPriceLimitX96',\n internalType: 'uint160',\n type: 'uint160',\n },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitBuyOnSecondaryAndComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitTimedSaleMintAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitTimedSaleMintAndComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'initialize',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'nonceUsed',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'pendingOwner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitBuyOnSecondaryAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'maxEthToSpend', internalType: 'uint256', type: 'uint256' },\n {\n name: 'sqrtPriceLimitX96',\n internalType: 'uint160',\n type: 'uint160',\n },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitBuyOnSecondaryAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType:\n 'struct ICallerAndCommenter.PermitTimedSaleMintAndComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'comment', internalType: 'string', type: 'string' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitTimedSaleMintAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'secondarySwap',\n outputs: [\n { name: '', internalType: 'contract ISecondarySwap', type: 'address' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'recipient', internalType: 'address payable', type: 'address' },\n { name: 'minEthToAcquire', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'sellOnSecondaryAndComment',\n outputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'sparkValue',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'quantity', internalType: 'uint256', type: 'uint256' },\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'timedSaleMintAndComment',\n outputs: [\n {\n name: '',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'zoraTimedSale',\n outputs: [\n {\n name: '',\n internalType: 'contract IZoraTimedSaleStrategy',\n type: 'address',\n },\n ],\n stateMutability: 'view',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'quantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n { name: 'text', internalType: 'string', type: 'string', indexed: false },\n ],\n name: 'MintedAndCommented',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferStarted',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'quantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: true,\n },\n {\n name: 'comment',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n {\n name: 'swapDirection',\n internalType: 'enum ICallerAndCommenter.SwapDirection',\n type: 'uint8',\n indexed: true,\n },\n ],\n name: 'SwappedOnSecondaryAndCommented',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [\n { name: 'expected', internalType: 'address', type: 'address' },\n { name: 'actual', internalType: 'address', type: 'address' },\n ],\n name: 'CommenterMismatch',\n },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n {\n type: 'error',\n inputs: [{ name: 'deadline', internalType: 'uint256', type: 'uint256' }],\n name: 'ERC2612ExpiredSignature',\n },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n {\n type: 'error',\n inputs: [\n {\n name: 'wrongDestinationChainId',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'IncorrectDestinationChain',\n },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'currentNonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'InvalidAccountNonce',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidSignature' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n {\n type: 'error',\n inputs: [\n { name: 'collection', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'SaleNotSet',\n },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n {\n type: 'error',\n inputs: [\n { name: 'currentName', internalType: 'string', type: 'string' },\n { name: 'newName', internalType: 'string', type: 'string' },\n ],\n name: 'UpgradeToMismatchedContractName',\n },\n {\n type: 'error',\n inputs: [\n { name: 'expected', internalType: 'uint256', type: 'uint256' },\n { name: 'actual', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'WrongValueSent',\n },\n] as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// CommentsImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const commentsImplABI = [\n {\n type: 'constructor',\n inputs: [\n { name: '_sparkValue', internalType: 'uint256', type: 'uint256' },\n { name: '_protocolRewards', internalType: 'address', type: 'address' },\n { name: '_zoraRecipient', internalType: 'address', type: 'address' },\n ],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'BACKFILLER_ROLE',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'DEFAULT_ADMIN_ROLE',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'DELEGATE_COMMENTER',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'DOMAIN_NAME',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'DOMAIN_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'PERMISSION_BIT_ADMIN',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'REFERRER_REWARD_PCT',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'ZORA_REWARD_NO_REFERRER_PCT',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'ZORA_REWARD_PCT',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifiers',\n internalType: 'struct IComments.CommentIdentifier[]',\n type: 'tuple[]',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'texts', internalType: 'string[]', type: 'string[]' },\n { name: 'timestamps', internalType: 'uint256[]', type: 'uint256[]' },\n {\n name: 'originalTransactionHashes',\n internalType: 'bytes32[]',\n type: 'bytes32[]',\n },\n ],\n name: 'backfillBatchAddComment',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'text', internalType: 'string', type: 'string' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n {\n name: 'commenterSmartWallet',\n internalType: 'address',\n type: 'address',\n },\n { name: 'referrer', internalType: 'address', type: 'address' },\n ],\n name: 'comment',\n outputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'commentSparksQuantity',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractName',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'text', internalType: 'string', type: 'string' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n {\n name: 'commenterSmartWalletOwner',\n internalType: 'address',\n type: 'address',\n },\n { name: 'referrer', internalType: 'address', type: 'address' },\n ],\n name: 'delegateComment',\n outputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'commentId', internalType: 'bytes32', type: 'bytes32' },\n ],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'role', internalType: 'bytes32', type: 'bytes32' }],\n name: 'getRoleAdmin',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'account', internalType: 'address', type: 'address' },\n ],\n name: 'grantRole',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'account', internalType: 'address', type: 'address' },\n ],\n name: 'hasRole',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'hashAndCheckCommentExists',\n outputs: [\n { name: 'commentId', internalType: 'bytes32', type: 'bytes32' },\n { name: 'exists', internalType: 'bool', type: 'bool' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'hashAndValidateCommentExists',\n outputs: [{ name: 'commentId', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n ],\n name: 'hashCommentIdentifier',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'commenterSmartWallet',\n internalType: 'address',\n type: 'address',\n },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'text', internalType: 'string', type: 'string' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitSparkComment',\n type: 'tuple',\n components: [\n {\n name: 'comment',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'sparker', internalType: 'address', type: 'address' },\n { name: 'sparksQuantity', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n ],\n name: 'hashPermitSparkComment',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'implementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'defaultAdmin', internalType: 'address', type: 'address' },\n { name: 'backfiller', internalType: 'address', type: 'address' },\n {\n name: 'delegateCommenters',\n internalType: 'address[]',\n type: 'address[]',\n },\n ],\n name: 'initialize',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'nextNonce',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'nonceUsed',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitComment',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'commenterSmartWallet',\n internalType: 'address',\n type: 'address',\n },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'text', internalType: 'string', type: 'string' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitComment',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'permit',\n internalType: 'struct IComments.PermitSparkComment',\n type: 'tuple',\n components: [\n {\n name: 'comment',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n {\n name: 'contractAddress',\n internalType: 'address',\n type: 'address',\n },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'sparker', internalType: 'address', type: 'address' },\n { name: 'sparksQuantity', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n { name: 'sourceChainId', internalType: 'uint32', type: 'uint32' },\n {\n name: 'destinationChainId',\n internalType: 'uint32',\n type: 'uint32',\n },\n ],\n },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'permitSparkComment',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'protocolRewards',\n outputs: [\n { name: '', internalType: 'contract IProtocolRewards', type: 'address' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'callerConfirmation', internalType: 'address', type: 'address' },\n ],\n name: 'renounceRole',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32' },\n { name: 'account', internalType: 'address', type: 'address' },\n ],\n name: 'revokeRole',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n },\n { name: 'sparksQuantity', internalType: 'uint256', type: 'uint256' },\n { name: 'referrer', internalType: 'address', type: 'address' },\n ],\n name: 'sparkComment',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'sparkValue',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n { name: 'text', internalType: 'string', type: 'string', indexed: false },\n {\n name: 'timestamp',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'originalTransactionId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: false,\n },\n ],\n name: 'BackfilledComment',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'replyToId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: false,\n },\n {\n name: 'replyTo',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'sparksQuantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n { name: 'text', internalType: 'string', type: 'string', indexed: false },\n {\n name: 'timestamp',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'referrer',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'Commented',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },\n {\n name: 'previousAdminRole',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'newAdminRole',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n ],\n name: 'RoleAdminChanged',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },\n {\n name: 'account',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'RoleGranted',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },\n {\n name: 'account',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'RoleRevoked',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'commentId',\n internalType: 'bytes32',\n type: 'bytes32',\n indexed: true,\n },\n {\n name: 'commentIdentifier',\n internalType: 'struct IComments.CommentIdentifier',\n type: 'tuple',\n components: [\n { name: 'commenter', internalType: 'address', type: 'address' },\n { name: 'contractAddress', internalType: 'address', type: 'address' },\n { name: 'tokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'nonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n indexed: false,\n },\n {\n name: 'sparksQuantity',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'sparker',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'timestamp',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'referrer',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'SparkedComment',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n { type: 'error', inputs: [], name: 'AccessControlBadConfirmation' },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'neededRole', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'AccessControlUnauthorizedAccount',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n { type: 'error', inputs: [], name: 'AddressZero' },\n { type: 'error', inputs: [], name: 'ArrayLengthMismatch' },\n { type: 'error', inputs: [], name: 'CannotSparkOwnComment' },\n {\n type: 'error',\n inputs: [\n { name: 'commentAddress', internalType: 'address', type: 'address' },\n { name: 'commentTokenId', internalType: 'uint256', type: 'uint256' },\n { name: 'replyAddress', internalType: 'address', type: 'address' },\n { name: 'replyTokenId', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'CommentAddressOrTokenIdsDoNotMatch',\n },\n { type: 'error', inputs: [], name: 'CommentDoesntExist' },\n {\n type: 'error',\n inputs: [\n { name: 'expected', internalType: 'address', type: 'address' },\n { name: 'actual', internalType: 'address', type: 'address' },\n ],\n name: 'CommenterMismatch',\n },\n {\n type: 'error',\n inputs: [{ name: 'commentId', internalType: 'bytes32', type: 'bytes32' }],\n name: 'DuplicateComment',\n },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n {\n type: 'error',\n inputs: [{ name: 'deadline', internalType: 'uint256', type: 'uint256' }],\n name: 'ERC2612ExpiredSignature',\n },\n { type: 'error', inputs: [], name: 'EmptyComment' },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n {\n type: 'error',\n inputs: [\n {\n name: 'wrongDestinationChainId',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'IncorrectDestinationChain',\n },\n {\n type: 'error',\n inputs: [\n { name: 'actual', internalType: 'uint256', type: 'uint256' },\n { name: 'expected', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'IncorrectETHAmountForSparks',\n },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'currentNonce', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'InvalidAccountNonce',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidSignature' },\n { type: 'error', inputs: [], name: 'MustSendAtLeastOneSpark' },\n { type: 'error', inputs: [], name: 'NoFundsRecipient' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'NotSmartWallet' },\n { type: 'error', inputs: [], name: 'NotSmartWalletOwner' },\n { type: 'error', inputs: [], name: 'NotTokenHolderOrAdmin' },\n { type: 'error', inputs: [], name: 'OnlySparksContract' },\n { type: 'error', inputs: [], name: 'TransferFailed' },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n {\n type: 'error',\n inputs: [\n { name: 'currentName', internalType: 'string', type: 'string' },\n { name: 'newName', internalType: 'string', type: 'string' },\n ],\n name: 'UpgradeToMismatchedContractName',\n },\n] as const\n"],"mappings":"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","names":[]}
|