Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 86 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Lock Tokens | 23889881 | 8 days ago | IN | 0 ETH | 0.00014016 | ||||
| Lock Tokens | 23719170 | 32 days ago | IN | 0 ETH | 0.00056072 | ||||
| Lock Tokens | 23718971 | 32 days ago | IN | 0 ETH | 0.00037184 | ||||
| Lock Tokens | 23660489 | 40 days ago | IN | 0 ETH | 0.00010691 | ||||
| Lock Tokens | 23639473 | 43 days ago | IN | 0 ETH | 0.0001803 | ||||
| Lock Tokens | 23616497 | 46 days ago | IN | 0 ETH | 0.00008206 | ||||
| Lock Tokens | 23562341 | 54 days ago | IN | 0 ETH | 0.00070604 | ||||
| Lock Tokens | 23524528 | 59 days ago | IN | 0 ETH | 0.0000666 | ||||
| Lock Tokens | 23523973 | 59 days ago | IN | 0 ETH | 0.00005393 | ||||
| Lock Tokens | 23523971 | 59 days ago | IN | 0 ETH | 0.00005483 | ||||
| Lock Tokens | 23523969 | 59 days ago | IN | 0 ETH | 0.0000544 | ||||
| Lock Tokens | 23523968 | 59 days ago | IN | 0 ETH | 0.00005407 | ||||
| Lock Tokens | 23523964 | 59 days ago | IN | 0 ETH | 0.00005695 | ||||
| Lock Tokens | 23474671 | 66 days ago | IN | 0 ETH | 0.000055 | ||||
| Lock Tokens | 23444892 | 70 days ago | IN | 0 ETH | 0.0000598 | ||||
| Lock Tokens | 23397137 | 77 days ago | IN | 0 ETH | 0.00007419 | ||||
| Lock Tokens | 23387830 | 78 days ago | IN | 0 ETH | 0.00005865 | ||||
| Lock Tokens | 23387827 | 78 days ago | IN | 0 ETH | 0.00006164 | ||||
| Lock Tokens | 23379127 | 80 days ago | IN | 0 ETH | 0.00011106 | ||||
| Lock Tokens | 23375957 | 80 days ago | IN | 0 ETH | 0.00016941 | ||||
| Lock Tokens | 23375851 | 80 days ago | IN | 0 ETH | 0.00016145 | ||||
| Lock Tokens | 23373735 | 80 days ago | IN | 0 ETH | 0.00006695 | ||||
| Lock Tokens | 23373195 | 80 days ago | IN | 0 ETH | 0.00006938 | ||||
| Lock Tokens | 23367350 | 81 days ago | IN | 0 ETH | 0.00013281 | ||||
| Lock Tokens | 23366402 | 81 days ago | IN | 0 ETH | 0.00007666 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
CNPSelfLocker
Compiler Version
v0.8.27+commit.40a35a09
Optimization Enabled:
Yes with 200 runs
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "./interfaces/ICNP.sol";
contract CNPSelfLocker {
ICNP public cnpContract;
event TokensBlocked(address indexed user, uint256[] tokenIds);
constructor(address _cnpContract) {
cnpContract = ICNP(_cnpContract);
}
function lockTokens(uint256[] calldata tokenIds) external {
for (uint256 i = 0; i < tokenIds.length; i++) {
require(
cnpContract.ownerOf(tokenIds[i]) == msg.sender,
"Not token owner"
);
}
cnpContract.setBlockedTokens(tokenIds);
emit TokensBlocked(msg.sender, tokenIds);
}
function isTokenBlocked(uint256 tokenId) external view returns (bool) {
return cnpContract.getBlockedToken(tokenId);
}
function isTokensBlocked(
uint256[] calldata tokenIds
) external view returns (bool[] memory) {
bool[] memory results = new bool[](tokenIds.length);
for (uint256 i = 0; i < tokenIds.length; i++) {
results[i] = cnpContract.getBlockedToken(tokenIds[i]);
}
return results;
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
interface ICNP {
function getBlockedToken(uint256 tokenId) external view returns (bool);
function setBlockedTokens(uint256[] calldata tokenIds) external;
function ownerOf(uint256 tokenId) external view returns (address);
}{
"remappings": [
"forge-std/=lib/forge-std/src/"
],
"optimizer": {
"enabled": true,
"runs": 200
},
"metadata": {
"useLiteralContent": false,
"bytecodeHash": "ipfs",
"appendCBOR": true
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "cancun",
"viaIR": false
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_cnpContract","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"TokensBlocked","type":"event"},{"inputs":[],"name":"cnpContract","outputs":[{"internalType":"contract ICNP","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"isTokenBlocked","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"isTokensBlocked","outputs":[{"internalType":"bool[]","name":"","type":"bool[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"lockTokens","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
6080604052348015600e575f5ffd5b50604051610613380380610613833981016040819052602b91604e565b5f80546001600160a01b0319166001600160a01b03929092169190911790556079565b5f60208284031215605d575f5ffd5b81516001600160a01b03811681146072575f5ffd5b9392505050565b61058d806100865f395ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c8063084b731a1461004e5780635b08e1b814610063578063669047281461008c578063812177e5146100b6575b5f5ffd5b61006161005c3660046103e0565b6100d9565b005b6100766100713660046103e0565b610265565b6040516100839190610451565b60405180910390f35b5f5461009e906001600160a01b031681565b6040516001600160a01b039091168152602001610083565b6100c96100c4366004610495565b61036f565b6040519015158152602001610083565b5f5b818110156101bf575f5433906001600160a01b0316636352211e858585818110610107576101076104ac565b905060200201356040518263ffffffff1660e01b815260040161012c91815260200190565b602060405180830381865afa158015610147573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061016b91906104c0565b6001600160a01b0316146101b75760405162461bcd60e51b815260206004820152600f60248201526e2737ba103a37b5b2b71037bbb732b960891b604482015260640160405180910390fd5b6001016100db565b505f5460405163ae66a5bb60e01b81526001600160a01b039091169063ae66a5bb906101f190859085906004016104ed565b5f604051808303815f87803b158015610208575f5ffd5b505af115801561021a573d5f5f3e3d5ffd5b50505050336001600160a01b03167f24236b9168186dc5492f93b13f6608deb0f4cf958801dfcc6b3d86110904088e83836040516102599291906104ed565b60405180910390a25050565b60605f8267ffffffffffffffff81111561028157610281610524565b6040519080825280602002602001820160405280156102aa578160200160208202803683370190505b5090505f5b83811015610367575f546001600160a01b031663f02f5baf8686848181106102d9576102d96104ac565b905060200201356040518263ffffffff1660e01b81526004016102fe91815260200190565b602060405180830381865afa158015610319573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033d9190610538565b82828151811061034f5761034f6104ac565b911515602092830291909101909101526001016102af565b509392505050565b5f805460405163f02f5baf60e01b8152600481018490526001600160a01b039091169063f02f5baf90602401602060405180830381865afa1580156103b6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103da9190610538565b92915050565b5f5f602083850312156103f1575f5ffd5b823567ffffffffffffffff811115610407575f5ffd5b8301601f81018513610417575f5ffd5b803567ffffffffffffffff81111561042d575f5ffd5b8560208260051b8401011115610441575f5ffd5b6020919091019590945092505050565b602080825282518282018190525f918401906040840190835b8181101561048a578351151583526020938401939092019160010161046a565b509095945050505050565b5f602082840312156104a5575f5ffd5b5035919050565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156104d0575f5ffd5b81516001600160a01b03811681146104e6575f5ffd5b9392505050565b602080825281018290525f6001600160fb1b0383111561050b575f5ffd5b8260051b80856040850137919091016040019392505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215610548575f5ffd5b815180151581146104e6575f5ffdfea2646970667358221220ca81007e0e688f0f4e4ae97121533b5280a236e65bccdee59645725b0e9ce1a764736f6c634300081b0033000000000000000000000000138a5c693279b6cd82f48d4bef563251bc15adce
Deployed Bytecode
0x608060405234801561000f575f5ffd5b506004361061004a575f3560e01c8063084b731a1461004e5780635b08e1b814610063578063669047281461008c578063812177e5146100b6575b5f5ffd5b61006161005c3660046103e0565b6100d9565b005b6100766100713660046103e0565b610265565b6040516100839190610451565b60405180910390f35b5f5461009e906001600160a01b031681565b6040516001600160a01b039091168152602001610083565b6100c96100c4366004610495565b61036f565b6040519015158152602001610083565b5f5b818110156101bf575f5433906001600160a01b0316636352211e858585818110610107576101076104ac565b905060200201356040518263ffffffff1660e01b815260040161012c91815260200190565b602060405180830381865afa158015610147573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061016b91906104c0565b6001600160a01b0316146101b75760405162461bcd60e51b815260206004820152600f60248201526e2737ba103a37b5b2b71037bbb732b960891b604482015260640160405180910390fd5b6001016100db565b505f5460405163ae66a5bb60e01b81526001600160a01b039091169063ae66a5bb906101f190859085906004016104ed565b5f604051808303815f87803b158015610208575f5ffd5b505af115801561021a573d5f5f3e3d5ffd5b50505050336001600160a01b03167f24236b9168186dc5492f93b13f6608deb0f4cf958801dfcc6b3d86110904088e83836040516102599291906104ed565b60405180910390a25050565b60605f8267ffffffffffffffff81111561028157610281610524565b6040519080825280602002602001820160405280156102aa578160200160208202803683370190505b5090505f5b83811015610367575f546001600160a01b031663f02f5baf8686848181106102d9576102d96104ac565b905060200201356040518263ffffffff1660e01b81526004016102fe91815260200190565b602060405180830381865afa158015610319573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033d9190610538565b82828151811061034f5761034f6104ac565b911515602092830291909101909101526001016102af565b509392505050565b5f805460405163f02f5baf60e01b8152600481018490526001600160a01b039091169063f02f5baf90602401602060405180830381865afa1580156103b6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103da9190610538565b92915050565b5f5f602083850312156103f1575f5ffd5b823567ffffffffffffffff811115610407575f5ffd5b8301601f81018513610417575f5ffd5b803567ffffffffffffffff81111561042d575f5ffd5b8560208260051b8401011115610441575f5ffd5b6020919091019590945092505050565b602080825282518282018190525f918401906040840190835b8181101561048a578351151583526020938401939092019160010161046a565b509095945050505050565b5f602082840312156104a5575f5ffd5b5035919050565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156104d0575f5ffd5b81516001600160a01b03811681146104e6575f5ffd5b9392505050565b602080825281018290525f6001600160fb1b0383111561050b575f5ffd5b8260051b80856040850137919091016040019392505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215610548575f5ffd5b815180151581146104e6575f5ffdfea2646970667358221220ca81007e0e688f0f4e4ae97121533b5280a236e65bccdee59645725b0e9ce1a764736f6c634300081b0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000138a5c693279b6cd82f48d4bef563251bc15adce
-----Decoded View---------------
Arg [0] : _cnpContract (address): 0x138A5C693279b6Cd82F48d4bEf563251Bc15ADcE
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000138a5c693279b6cd82f48d4bef563251bc15adce
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
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.