Source Code
Overview
ETH Balance
0 ETH
More Info
ContractCreator
Multichain Info
N/A
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xb9F5840b...3dd3257ef The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
BasicTransferValidator
Compiler Version
v0.8.28+commit.7893614a
ZkSolc Version
v1.5.7
Optimization Enabled:
Yes with Mode 3
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.9; import {ITransferValidator} from "@creator-token-standards/interfaces/ITransferValidator.sol"; /** @title NFT base contract for all game NFTs. Exposes traits for the NFT and respects GameRegistry/Soulbound access control */ contract BasicTransferValidator is ITransferValidator { function applyCollectionTransferPolicy(address caller, address from, address to) external view { } function validateTransfer(address caller, address from, address to) external view { } function validateTransfer(address caller, address from, address to, uint256 tokenId) external view { } function validateTransfer(address caller, address from, address to, uint256 tokenId, uint256 amount) external { } function beforeAuthorizedTransfer(address operator, address token, uint256 tokenId) external { } function afterAuthorizedTransfer(address token, uint256 tokenId) external { } function beforeAuthorizedTransfer(address operator, address token) external { } function afterAuthorizedTransfer(address token) external { } function beforeAuthorizedTransfer(address token, uint256 tokenId) external { } function beforeAuthorizedTransferWithAmount(address token, uint256 tokenId, uint256 amount) external { } function afterAuthorizedTransferWithAmount(address token, uint256 tokenId) external { } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.4; interface ITransferValidator { function applyCollectionTransferPolicy(address caller, address from, address to) external view; function validateTransfer(address caller, address from, address to) external view; function validateTransfer(address caller, address from, address to, uint256 tokenId) external view; function validateTransfer(address caller, address from, address to, uint256 tokenId, uint256 amount) external; function beforeAuthorizedTransfer(address operator, address token, uint256 tokenId) external; function afterAuthorizedTransfer(address token, uint256 tokenId) external; function beforeAuthorizedTransfer(address operator, address token) external; function afterAuthorizedTransfer(address token) external; function beforeAuthorizedTransfer(address token, uint256 tokenId) external; function beforeAuthorizedTransferWithAmount(address token, uint256 tokenId, uint256 amount) external; function afterAuthorizedTransferWithAmount(address token, uint256 tokenId) external; }
{ "viaIR": false, "codegen": "yul", "remappings": [ "@limitbreak/creator-token-standards/=lib/creator-token-standards/", "@openzeppelin/=lib/openzeppelin-contracts/", "ds-test/=lib/forge-std/lib/ds-test/src/", "forge-std/=lib/forge-std/src/", "murky/=lib/murky/src/", "erc721a/=lib/ERC721A/", "@creator-token-standards/=lib/creator-token-standards/src/", "@limitbreak/permit-c/=lib/creator-token-standards/lib/PermitC/src/", "@opensea/tstorish/=lib/creator-token-standards/lib/tstorish/src/", "@rari-capital/solmate/=lib/creator-token-standards/lib/PermitC/lib/solmate/", "ERC721A/=lib/ERC721A/contracts/", "PermitC/=lib/creator-token-standards/lib/PermitC/", "creator-token-standards/=lib/creator-token-standards/", "erc4626-tests/=lib/murky/lib/openzeppelin-contracts/lib/erc4626-tests/", "forge-gas-metering/=lib/creator-token-standards/lib/PermitC/lib/forge-gas-metering/", "forge-zksync-std/=lib/forge-zksync-std/src/", "openzeppelin-contracts/=lib/openzeppelin-contracts/", "openzeppelin/=lib/creator-token-standards/lib/PermitC/lib/openzeppelin-contracts/contracts/", "solady/=lib/creator-token-standards/lib/PermitC/lib/forge-gas-metering/lib/solady/", "solmate/=lib/creator-token-standards/lib/PermitC/lib/solmate/src/", "tstorish/=lib/creator-token-standards/lib/tstorish/src/" ], "evmVersion": "cancun", "outputSelection": { "*": { "*": [ "abi", "metadata" ], "": [ "ast" ] } }, "optimizer": { "enabled": true, "mode": "3", "fallback_to_optimizing_for_size": false, "disable_system_request_memoization": true }, "metadata": {}, "libraries": {}, "enableEraVMExtensions": false, "forceEVMLA": false }
[{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"afterAuthorizedTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"afterAuthorizedTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"afterAuthorizedTransferWithAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"}],"name":"applyCollectionTransferPolicy","outputs":[],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"beforeAuthorizedTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"token","type":"address"}],"name":"beforeAuthorizedTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"beforeAuthorizedTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"beforeAuthorizedTransferWithAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"validateTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"}],"name":"validateTransfer","outputs":[],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"validateTransfer","outputs":[],"stateMutability":"view","type":"function"}]
Deployed Bytecode
0x0000008003000039000000400030043f0000000100200190000000150000c13d00000060021002700000001b02200197000000040020008c000000620000413d000000000301043b000000e0033002700000001d0030009c0000001d0000a13d0000001e0030009c000000260000213d000000220030009c0000003c0000613d000000230030009c000000390000613d000000240030009c0000002f0000613d000000620000013d0000000001000416000000000001004b000000620000c13d0000002001000039000001000010044300000120000004430000001c01000041000000670001042e000000250030009c000000320000a13d000000260030009c000000390000613d000000270030009c000000470000613d000000280030009c0000002f0000613d000000620000013d0000001f0030009c0000002f0000613d000000200030009c0000004a0000613d000000210030009c000000620000c13d000000640020008c0000003e0000813d000000620000013d000000440020008c0000005b0000813d000000620000013d000000290030009c000000590000613d0000002a0030009c000000620000c13d000000a40020008c0000004c0000813d000000620000013d000000640020008c0000004c0000813d000000620000013d000000440020008c000000620000413d0000000002000416000000000002004b000000620000c13d0000000402100370000000000202043b0000002b0020009c000000620000213d00000024011003700000005f0000013d000000640020008c0000005b0000813d000000620000013d000000840020008c000000620000413d0000000002000416000000000002004b000000620000c13d0000000402100370000000000202043b0000002b0020009c000000620000213d0000002402100370000000000202043b0000002b0020009c000000620000213d00000044011003700000005f0000013d000000240020008c000000620000413d0000000002000416000000000002004b000000620000c13d0000000401100370000000000101043b0000002b0010009c000000640000a13d000000000100001900000068000104300000000001000019000000670001042e0000006600000432000000670001042e000000680001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000200000000000000000000000000000040000001000000000000000000000000000000000000000000000000000000000000000000000000005079331400000000000000000000000000000000000000000000000000000000b89c4b0c00000000000000000000000000000000000000000000000000000000b89c4b0d00000000000000000000000000000000000000000000000000000000caee23ea00000000000000000000000000000000000000000000000000000000db5f30a80000000000000000000000000000000000000000000000000000000050793315000000000000000000000000000000000000000000000000000000007c1e14b400000000000000000000000000000000000000000000000000000000b6e39ba100000000000000000000000000000000000000000000000000000000285fb8c700000000000000000000000000000000000000000000000000000000285fb8c80000000000000000000000000000000000000000000000000000000028cc1131000000000000000000000000000000000000000000000000000000003a0e3160000000000000000000000000000000000000000000000000000000000ad38899000000000000000000000000000000000000000000000000000000001854b241000000000000000000000000ffffffffffffffffffffffffffffffffffffffff1a6a05bee52f4433705c3befc50aa0713569b38fc5f7b75ecdcb8b7d95a20f44
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.