Sözleşme
0x22978e83A94a101E9A37ff0f2Fc9dC54AA5e6E54
Genel Bakış
XCR DENGE
0 XCR
XCR DEĞER
$--- (@ $---/XCR)
Daha Fazla Bilgi
SÖZLEŞME YARATICISI
Ebeveyn Txn Hash |
Yöntem
|
Blok | Yaş | Kimden | için | "%>Değer | |
---|---|---|---|---|---|---|---|
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH | ||
0xecf33c0f32a79068…
|
Deposit
|
10 secs ago | 0xbAFA44...559c1138 | Beacon Deposit Contract | 32 ETH |
|
İşlem Karması |
Yöntem
|
Blok | Yaş | Kimden | için | Değer | Txn Peri | |
---|---|---|---|---|---|---|---|---|---|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) | |
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | 30,000,000,000 | Catecoin (CATE) |
|
Transaction Hash |
Method
|
Blok | Yaş | Kimden | için | Tip | Öğe | |
---|---|---|---|---|---|---|---|---|---|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
|
|
0xecf33c0f32a79068…
|
Transfer
|
12 hrs 44 mins ago | Catecoin: Deployer 2 |
IN
|
Beacon Deposit Co... | ECR_721 |
Greeting Cards 2023 Limit
NFT: Greeting Cards 2023 Limited Ed
|
Contract Source Code Verified
(Exact Match)
ContractName:
DepositContract
Optimization Enabled:
Yes
with
5000000
runs
Compiler Version:
v0.6.11+commit.5ef660b1
Other Settings:
default
evmVersion,
Unlicense
license
Contract Security Audit
Contract ABI
Contract Creation Code
Deployed ByteCode Sourcemap
Swarm Source
ipfs://dceca8706b29e917dacf25fceef95acac8d90d765ac926663ce4096195952b61
Descriptions included below are taken from the contract source code NatSpec. CVCscan does not provide any guarantees on their safety or accuracy.
Txn Hash | Blok | Yaş | Yöntem |
|
---|---|---|---|---|
0xecf33c0f32a79068…
|
17453280 | 13 mins ago |
0x22895118
|
DepositEvent (bytes
pubkey,
bytes
withdrawal_credentials,
bytes
amount,
bytes
signature,
bytes
index)
[topic0] 0x649bbc62d0e31342afea4e5cd82d4049e7e1ee912fc0889aa790803be39038c5
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
|
0xecf33c0f32a79068…
|
17453280 | 13 mins ago |
0x22895118
|
DepositEvent (bytes
pubkey,
bytes
withdrawal_credentials,
bytes
amount,
bytes
signature,
bytes
index)
[topic0] 0x649bbc62d0e31342afea4e5cd82d4049e7e1ee912fc0889aa790803be39038c5
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
|
0xecf33c0f32a79068…
|
17453280 | 13 mins ago |
0x22895118
|
DepositEvent (bytes
pubkey,
bytes
withdrawal_credentials,
bytes
amount,
bytes
signature,
bytes
index)
[topic0] 0x649bbc62d0e31342afea4e5cd82d4049e7e1ee912fc0889aa790803be39038c5
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
Hex
Hex
Number
Text
Address
|
Block | Age | Transaction | Difficulty | Gas Used | Reward |
---|---|---|---|---|---|
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
0xecf33c0f32a79068…
|
34 days 21 hrs ago | 145 | 0.00 TH |
10,915,233 (36.38%)
|
0.026092595899657117 ETH |
QR Kodu
Uyarı! Sözleşme bayt kodu değiştirilmiştir ve doğrulanmış olanla eşleşmemektedir. Bu nedenle, bu akıllı sözleşme ile etkileşim riskli olabilir.
Bu sözleşme Sourcify aracılığıyla kısmen doğrulanmıştır.
- Sözleşme Adı:
- NFTChecker
- Optimizasyon Etkin:
- gerçek
- Derleyici sürümü:
- v0.8.16+commit.07a7930e
- Optimizasyon Çalışmaları:
- 200
- EVM versiyonu:
- default
- Doğrulandı:
- 2024-03-20T12:39:31.102952Z
Dosya 1 . 1: Sözleşme kaynak kodu
// Sources flattened with hardhat v2.13.0 https://hardhat.org // File @openzeppelin/contracts/utils/introspection/IERC165.sol@v4.8.2 // SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC165 standard, as defined in the * https://eips.ethereum.org/EIPS/eip-165[EIP]. * * Implementers can declare support of contract interfaces, which can then be * queried by others ({ERC165Checker}). * * For an implementation, see {ERC165}. */ interface IERC165 { /** * @dev Returns true if this contract implements the interface defined by * `interfaceId`. See the corresponding * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] * to learn more about how these ids are created. * * This function call must use less than 30 000 gas. */ function supportsInterface(bytes4 interfaceId) external view returns (bool); } // File @openzeppelin/contracts/interfaces/IERC2981.sol@v4.8.2 // OpenZeppelin Contracts (last updated v4.6.0) (interfaces/IERC2981.sol) pragma solidity ^0.8.0; /** * @dev Interface for the NFT Royalty Standard. * * A standardized way to retrieve royalty payment information for non-fungible tokens (NFTs) to enable universal * support for royalty payments across all NFT marketplaces and ecosystem participants. * * _Available since v4.5._ */ interface IERC2981 is IERC165 { /** * @dev Returns how much royalty is owed and to whom, based on a sale price that may be denominated in any unit of * exchange. The royalty amount is denominated and should be paid in that same unit of exchange. */ function royaltyInfo( uint256 tokenId, uint256 salePrice ) external view returns (address receiver, uint256 royaltyAmount); } // File @openzeppelin/contracts/token/ERC1155/IERC1155.sol@v4.8.2 // OpenZeppelin Contracts (last updated v4.7.0) (token/ERC1155/IERC1155.sol) pragma solidity ^0.8.0; /** * @dev Required interface of an ERC1155 compliant contract, as defined in the * https://eips.ethereum.org/EIPS/eip-1155[EIP]. * * _Available since v3.1._ */ interface IERC1155 is IERC165 { /** * @dev Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`. */ event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value); /** * @dev Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all * transfers. */ event TransferBatch( address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values ); /** * @dev Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to * `approved`. */ event ApprovalForAll(address indexed account, address indexed operator, bool approved); /** * @dev Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. * * If an {URI} event was emitted for `id`, the standard * https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value * returned by {IERC1155MetadataURI-uri}. */ event URI(string value, uint256 indexed id); /** * @dev Returns the amount of tokens of token type `id` owned by `account`. * * Requirements: * * - `account` cannot be the zero address. */ function balanceOf(address account, uint256 id) external view returns (uint256); /** * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}. * * Requirements: * * - `accounts` and `ids` must have the same length. */ function balanceOfBatch( address[] calldata accounts, uint256[] calldata ids ) external view returns (uint256[] memory); /** * @dev Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`, * * Emits an {ApprovalForAll} event. * * Requirements: * * - `operator` cannot be the caller. */ function setApprovalForAll(address operator, bool approved) external; /** * @dev Returns true if `operator` is approved to transfer ``account``'s tokens. * * See {setApprovalForAll}. */ function isApprovedForAll(address account, address operator) external view returns (bool); /** * @dev Transfers `amount` tokens of token type `id` from `from` to `to`. * * Emits a {TransferSingle} event. * * Requirements: * * - `to` cannot be the zero address. * - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}. * - `from` must have a balance of tokens of type `id` of at least `amount`. * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the * acceptance magic value. */ function safeTransferFrom(address from, address to, uint256 id, uint256 amount, bytes calldata data) external; /** * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}. * * Emits a {TransferBatch} event. * * Requirements: * * - `ids` and `amounts` must have the same length. * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the * acceptance magic value. */ function safeBatchTransferFrom( address from, address to, uint256[] calldata ids, uint256[] calldata amounts, bytes calldata data ) external; } // File @openzeppelin/contracts/token/ERC721/IERC721.sol@v4.8.2 // OpenZeppelin Contracts (last updated v4.8.0) (token/ERC721/IERC721.sol) pragma solidity ^0.8.0; /** * @dev Required interface of an ERC721 compliant contract. */ interface IERC721 is IERC165 { /** * @dev Emitted when `tokenId` token is transferred from `from` to `to`. */ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token. */ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets. */ event ApprovalForAll(address indexed owner, address indexed operator, bool approved); /** * @dev Returns the number of tokens in ``owner``'s account. */ function balanceOf(address owner) external view returns (uint256 balance); /** * @dev Returns the owner of the `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function ownerOf(uint256 tokenId) external view returns (address owner); /** * @dev Safely transfers `tokenId` token from `from` to `to`. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom(address from, address to, uint256 tokenId, bytes calldata data) external; /** * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients * are aware of the ERC721 protocol to prevent tokens from being forever locked. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom(address from, address to, uint256 tokenId) external; /** * @dev Transfers `tokenId` token from `from` to `to`. * * WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 * or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must * understand this adds an external call which potentially creates a reentrancy vulnerability. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * * Emits a {Transfer} event. */ function transferFrom(address from, address to, uint256 tokenId) external; /** * @dev Gives permission to `to` to transfer `tokenId` token to another account. * The approval is cleared when the token is transferred. * * Only a single account can be approved at a time, so approving the zero address clears previous approvals. * * Requirements: * * - The caller must own the token or be an approved operator. * - `tokenId` must exist. * * Emits an {Approval} event. */ function approve(address to, uint256 tokenId) external; /** * @dev Approve or remove `operator` as an operator for the caller. * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. * * Requirements: * * - The `operator` cannot be the caller. * * Emits an {ApprovalForAll} event. */ function setApprovalForAll(address operator, bool _approved) external; /** * @dev Returns the account approved for `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function getApproved(uint256 tokenId) external view returns (address operator); /** * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`. * * See {setApprovalForAll} */ function isApprovedForAll(address owner, address operator) external view returns (bool); } // File @openzeppelin/contracts/utils/introspection/ERC165Checker.sol@v4.8.2 // OpenZeppelin Contracts (last updated v4.8.2) (utils/introspection/ERC165Checker.sol) pragma solidity ^0.8.0; /** * @dev Library used to query support of an interface declared via {IERC165}. * * Note that these functions return the actual result of the query: they do not * `revert` if an interface is not supported. It is up to the caller to decide * what to do in these cases. */ library ERC165Checker { // As per the EIP-165 spec, no interface should ever match 0xffffffff bytes4 private constant _INTERFACE_ID_INVALID = 0xffffffff; /** * @dev Returns true if `account` supports the {IERC165} interface. */ function supportsERC165(address account) internal view returns (bool) { // Any contract that implements ERC165 must explicitly indicate support of // InterfaceId_ERC165 and explicitly indicate non-support of InterfaceId_Invalid return supportsERC165InterfaceUnchecked(account, type(IERC165).interfaceId) && !supportsERC165InterfaceUnchecked(account, _INTERFACE_ID_INVALID); } /** * @dev Returns true if `account` supports the interface defined by * `interfaceId`. Support for {IERC165} itself is queried automatically. * * See {IERC165-supportsInterface}. */ function supportsInterface(address account, bytes4 interfaceId) internal view returns (bool) { // query support of both ERC165 as per the spec and support of _interfaceId return supportsERC165(account) && supportsERC165InterfaceUnchecked(account, interfaceId); } /** * @dev Returns a boolean array where each value corresponds to the * interfaces passed in and whether they're supported or not. This allows * you to batch check interfaces for a contract where your expectation * is that some interfaces may not be supported. * * See {IERC165-supportsInterface}. * * _Available since v3.4._ */ function getSupportedInterfaces( address account, bytes4[] memory interfaceIds ) internal view returns (bool[] memory) { // an array of booleans corresponding to interfaceIds and whether they're supported or not bool[] memory interfaceIdsSupported = new bool[](interfaceIds.length); // query support of ERC165 itself if (supportsERC165(account)) { // query support of each interface in interfaceIds for (uint256 i = 0; i < interfaceIds.length; i++) { interfaceIdsSupported[i] = supportsERC165InterfaceUnchecked(account, interfaceIds[i]); } } return interfaceIdsSupported; } /** * @dev Returns true if `account` supports all the interfaces defined in * `interfaceIds`. Support for {IERC165} itself is queried automatically. * * Batch-querying can lead to gas savings by skipping repeated checks for * {IERC165} support. * * See {IERC165-supportsInterface}. */ function supportsAllInterfaces(address account, bytes4[] memory interfaceIds) internal view returns (bool) { // query support of ERC165 itself if (!supportsERC165(account)) { return false; } // query support of each interface in interfaceIds for (uint256 i = 0; i < interfaceIds.length; i++) { if (!supportsERC165InterfaceUnchecked(account, interfaceIds[i])) { return false; } } // all interfaces supported return true; } /** * @notice Query if a contract implements an interface, does not check ERC165 support * @param account The address of the contract to query for support of an interface * @param interfaceId The interface identifier, as specified in ERC-165 * @return true if the contract at account indicates support of the interface with * identifier interfaceId, false otherwise * @dev Assumes that account contains a contract that supports ERC165, otherwise * the behavior of this method is undefined. This precondition can be checked * with {supportsERC165}. * * Some precompiled contracts will falsely indicate support for a given interface, so caution * should be exercised when using this function. * * Interface identification is specified in ERC-165. */ function supportsERC165InterfaceUnchecked(address account, bytes4 interfaceId) internal view returns (bool) { // prepare call bytes memory encodedParams = abi.encodeWithSelector(IERC165.supportsInterface.selector, interfaceId); // perform static call bool success; uint256 returnSize; uint256 returnValue; assembly { success := staticcall(30000, account, add(encodedParams, 0x20), mload(encodedParams), 0x00, 0x20) returnSize := returndatasize() returnValue := mload(0x00) } return success && returnSize >= 0x20 && returnValue > 0; } } // File contracts/NFTChecker.sol pragma solidity 0.8.16; contract NFTChecker { using ERC165Checker for address; bytes4 public constant IID_IERC165 = type(IERC165).interfaceId; bytes4 public constant IID_IERC721 = type(IERC721).interfaceId; bytes4 public constant IID_IERC1155 = type(IERC1155).interfaceId; bytes4 public constant IID_IERC2981 = type(IERC2981).interfaceId; function isERC165(address _contractAddr) public view returns (bool) { return _contractAddr.supportsInterface(IID_IERC165); } function isERC721(address _contractAddr) public view returns (bool) { return _contractAddr.supportsInterface(IID_IERC721); } function isERC1155(address _contractAddr) public view returns (bool) { return _contractAddr.supportsInterface(IID_IERC1155); } function isNFT(address _contractAddr) public view returns (bool) { return isERC721(_contractAddr) || isERC1155(_contractAddr); } function isImplementRoyalty(address _contractAddr) public view returns (bool) { return _contractAddr.supportsInterface(IID_IERC2981); } }
Sözleşme ABI
[{"type":"function","stateMutability":"view","outputs":[{"type":"bytes4","name":"","internalType":"bytes4"}],"name":"IID_IERC1155","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"bytes4","name":"","internalType":"bytes4"}],"name":"IID_IERC165","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"bytes4","name":"","internalType":"bytes4"}],"name":"IID_IERC2981","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"bytes4","name":"","internalType":"bytes4"}],"name":"IID_IERC721","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"isERC1155","inputs":[{"type":"address","name":"_contractAddr","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"isERC165","inputs":[{"type":"address","name":"_contractAddr","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"isERC721","inputs":[{"type":"address","name":"_contractAddr","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"isImplementRoyalty","inputs":[{"type":"address","name":"_contractAddr","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"isNFT","inputs":[{"type":"address","name":"_contractAddr","internalType":"address"}]}]
Sözleşme Oluşturma Kodu
0x608060405234801561001057600080fd5b50610327806100206000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063b31b85c911610066578063b31b85c914610103578063daa09e5414610116578063e0966dad14610129578063f1274cc114610137578063f9f0fb461461014a57600080fd5b806307386bdd14610098578063282e460a146100c45780639b8cfe52146100e7578063a4027838146100f5575b600080fd5b6100a663152a902d60e11b81565b6040516001600160e01b031990911681526020015b60405180910390f35b6100d76100d23660046102c8565b61015d565b60405190151581526020016100bb565b6100a6636cdb3d1360e11b81565b6100a66301ffc9a760e01b81565b6100d76101113660046102c8565b61017f565b6100d76101243660046102c8565b610199565b6100a66380ac58cd60e01b81565b6100d76101453660046102c8565b6101b5565b6100d76101583660046102c8565b6101d1565b60006101796001600160a01b038316636cdb3d1360e11b6101e9565b92915050565b600061018a82610199565b8061017957506101798261015d565b60006101796001600160a01b0383166380ac58cd60e01b6101e9565b60006101796001600160a01b0383166301ffc9a760e01b6101e9565b60006101796001600160a01b03831663152a902d60e11b5b60006101f48361020c565b80156102055750610205838361023f565b9392505050565b600061021f826301ffc9a760e01b61023f565b80156101795750610238826001600160e01b031961023f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156102b1575060208210155b80156102bd5750600081115b979650505050505050565b6000602082840312156102da57600080fd5b81356001600160a01b038116811461020557600080fdfea264697066735822122065ae4de37c0b60a983ce48c5f3ef29d284a06868cf29880a962551e55c267a9d64736f6c63430008100033
Dağıtılmış ByteCode
0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063b31b85c911610066578063b31b85c914610103578063daa09e5414610116578063e0966dad14610129578063f1274cc114610137578063f9f0fb461461014a57600080fd5b806307386bdd14610098578063282e460a146100c45780639b8cfe52146100e7578063a4027838146100f5575b600080fd5b6100a663152a902d60e11b81565b6040516001600160e01b031990911681526020015b60405180910390f35b6100d76100d23660046102c8565b61015d565b60405190151581526020016100bb565b6100a6636cdb3d1360e11b81565b6100a66301ffc9a760e01b81565b6100d76101113660046102c8565b61017f565b6100d76101243660046102c8565b610199565b6100a66380ac58cd60e01b81565b6100d76101453660046102c8565b6101b5565b6100d76101583660046102c8565b6101d1565b60006101796001600160a01b038316636cdb3d1360e11b6101e9565b92915050565b600061018a82610199565b8061017957506101798261015d565b60006101796001600160a01b0383166380ac58cd60e01b6101e9565b60006101796001600160a01b0383166301ffc9a760e01b6101e9565b60006101796001600160a01b03831663152a902d60e11b5b60006101f48361020c565b80156102055750610205838361023f565b9392505050565b600061021f826301ffc9a760e01b61023f565b80156101795750610238826001600160e01b031961023f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156102b1575060208210155b80156102bd5750600081115b979650505050505050565b6000602082840312156102da57600080fd5b81356001600160a01b038116811461020557600080fdfea264697066735822122065ae4de37c0b60a983ce48c5f3ef29d284a06868cf29880a962551e55c267a9d64736f6c63430008100033