// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
interface IERC20 {
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address to, uint256 value) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 value) external returns (bool);
function transferFrom(address from, address to, uint256 value) external returns (bool);
}
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}
contract CleanToken is IERC20, IERC20Metadata {
string private _name;
string private _symbol;
uint256 private _totalSupply;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
constructor(string memory name_, string memory symbol_, uint256 supply_) {
_name = name_;
_symbol = symbol_;
uint256 amount = supply_ * 10 ** 18;
_totalSupply = amount;
_balances[msg.sender] = amount;
emit Transfer(address(0), msg.sender, amount);
}
function name() external view returns (string memory) { return _name; }
function symbol() external view returns (string memory) { return _symbol; }
function decimals() external pure returns (uint8) { return 18; }
function totalSupply() external view returns (uint256) { return _totalSupply; }
function balanceOf(address account) external view returns (uint256) { return _balances[account]; }
function allowance(address owner, address spender) external view returns (uint256) {
return _allowances[owner][spender];
}
function transfer(address to, uint256 value) external returns (bool) {
_transfer(msg.sender, to, value);
return true;
}
function approve(address spender, uint256 value) external returns (bool) {
_approve(msg.sender, spender, value);
return true;
}
function transferFrom(address from, address to, uint256 value) external returns (bool) {
uint256 current = _allowances[from][msg.sender];
require(current >= value, "ERC20: insufficient allowance");
unchecked { _approve(from, msg.sender, current - value); }
_transfer(from, to, value);
return true;
}
function _transfer(address from, address to, uint256 value) private {
require(from != address(0), "ERC20: transfer from zero");
require(to != address(0), "ERC20: transfer to zero");
uint256 fromBalance = _balances[from];
require(fromBalance >= value, "ERC20: insufficient balance");
unchecked {
_balances[from] = fromBalance - value;
_balances[to] += value;
}
emit Transfer(from, to, value);
}
function _approve(address owner, address spender, uint256 value) private {
require(owner != address(0), "ERC20: approve from zero");
require(spender != address(0), "ERC20: approve to zero");
_allowances[owner][spender] = value;
emit Approval(owner, spender, value);
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "name_",
"type": "string",
"internalType": "string"
},
{
"name": "symbol_",
"type": "string",
"internalType": "string"
},
{
"name": "supply_",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "nonpayable"
},
{
"name": "Approval",
"type": "event",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "spender",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "Transfer",
"type": "event",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "allowance",
"type": "function",
"inputs": [
{
"name": "owner",
"type": "address",
"internalType": "address"
},
{
"name": "spender",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "approve",
"type": "function",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "balanceOf",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "pure"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "symbol",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "totalSupply",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "transfer",
"type": "function",
"inputs": [
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "transferFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
}
]0x608060405234620003925762000b60803803806200001d8162000396565b928339810190606081830312620003925780516001600160401b03929083811162000392578162000050918401620003bc565b6020918284015185811162000392576040916200006f918601620003bc565b9301519381518181116200037e575f948554916001948584811c9416801562000373575b878510146200035f578190601f948581116200030c575b508790858311600114620002a95789926200029d575b50505f19600383901b1c191690851b1786555b8051928311620002895783548481811c911680156200027e575b868210146200026a579081838594931162000215575b5085918311600114620001b2578692620001a6575b50505f19600383901b1c191690821b1790555b670de0b6b3a76400009283810293818504149015171562000192577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9083600255338352600381528360408420556040519384523393a360405161073390816200042d8239f35b634e487b7160e01b82526011600452602482fd5b015190505f8062000118565b8487528587208594509190601f198416885b88828210620001fe5750508411620001e5575b505050811b0190556200012b565b01515f1960f88460031b161c191690555f8080620001d7565b8385015186558897909501949384019301620001c4565b909192508487528587208380860160051c82019288871062000260575b91869588929594930160051c01915b8281106200025157505062000103565b89815586955087910162000241565b9250819262000232565b634e487b7160e01b87526022600452602487fd5b90607f1690620000ed565b634e487b7160e01b86526041600452602486fd5b015190505f80620000c0565b898052888a208894509190601f1984168b5b8b828210620002f55750508411620002dc575b505050811b018655620000d3565b01515f1960f88460031b161c191690555f8080620002ce565b8385015186558b97909501949384019301620002bb565b9091508880528789208580850160051c8201928a861062000355575b918991869594930160051c01915b82811062000346575050620000aa565b8b815585945089910162000336565b9250819262000328565b634e487b7160e01b88526022600452602488fd5b93607f169362000093565b634e487b7160e01b5f52604160045260245ffd5b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176200037e57604052565b919080601f84011215620003925782516001600160401b0381116200037e57602090620003f2601f8201601f1916830162000396565b9281845282828701011162000392575f5b818110620004185750825f9394955001015290565b85810183015184820184015282016200040356fe60806040818152600480361015610014575f80fd5b5f92833560e01c90816306fdde031461036d57508063095ea7b31461034357806318160ddd1461032457806323b872dd14610278578063313ce5671461025c57806370a082311461022457806395d89b4114610103578063a9059cbb146100ce5763dd62ed3e14610083575f80fd5b346100ca57816003193601126100ca5760209282916100a06104a7565b6100a86104c1565b6001600160a01b03918216845291865283832091168252845220549051908152f35b8280fd5b5050346100ff57806003193601126100ff576020906100f86100ee6104a7565b60243590336104d7565b5160018152f35b5080fd5b509190346100ff57816003193601126100ff5780519082600180549081811c9080831692831561021a575b6020938484108114610207578388529081156101eb5750600114610196575b505050829003601f01601f191682019267ffffffffffffffff841183851017610183575082918261017f925282610460565b0390f35b634e487b7160e01b815260418552602490fd5b8087529192508591837fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b8385106101d757505050508301015f808061014d565b8054888601830152930192849082016101c1565b60ff1916878501525050151560051b84010190505f808061014d565b634e487b7160e01b895260228a52602489fd5b91607f169161012e565b5050346100ff5760203660031901126100ff5760209181906001600160a01b0361024c6104a7565b1681526003845220549051908152f35b5050346100ff57816003193601126100ff576020905160128152f35b508290346100ff5760603660031901126100ff576102946104a7565b61029c6104c1565b6001600160a01b038216845260208381528585203386529052928490205460443593928482106102e1576020866100f88787876102dc838903338361061d565b6104d7565b606490602087519162461bcd60e51b8352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b5050346100ff57816003193601126100ff576020906002549051908152f35b5050346100ff57806003193601126100ff576020906100f86103636104a7565b602435903361061d565b84915083346100ca57826003193601126100ca57828354600181811c90808316928315610456575b60209384841081146102075783885290811561043a57506001146103e557505050829003601f01601f191682019267ffffffffffffffff841183851017610183575082918261017f925282610460565b8680529192508591837f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b838510610426575050505083010185808061014d565b805488860183015293019284908201610410565b60ff1916878501525050151560051b840101905085808061014d565b91607f1691610395565b602080825282518183018190529093925f5b82811061049357505060409293505f838284010152601f8019910116010190565b818101860151848201604001528501610472565b600435906001600160a01b03821682036104bd57565b5f80fd5b602435906001600160a01b03821682036104bd57565b6001600160a01b039081169182156105d85716918215610593575f828152600360205260408120549180831061054e57604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef95876020965260038652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152601b60248201527f45524332303a20696e73756666696369656e742062616c616e636500000000006044820152606490fd5b60405162461bcd60e51b815260206004820152601760248201527f45524332303a207472616e7366657220746f207a65726f0000000000000000006044820152606490fd5b60405162461bcd60e51b815260206004820152601960248201527f45524332303a207472616e736665722066726f6d207a65726f000000000000006044820152606490fd5b6001600160a01b039081169182156106b8571691821561067a5760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526004825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152601660248201527545524332303a20617070726f766520746f207a65726f60501b6044820152606490fd5b60405162461bcd60e51b815260206004820152601860248201527f45524332303a20617070726f76652066726f6d207a65726f00000000000000006044820152606490fdfea2646970667358221220aaffba2916c4bba704b47d3ff33e6da57efe8bfe4674263f333ce9ac45f0a3c664736f6c63430008140033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003b9aca0000000000000000000000000000000000000000000000000000000000000000064865726d6573000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064865726d65730000000000000000000000000000000000000000000000000000
0x60806040818152600480361015610014575f80fd5b5f92833560e01c90816306fdde031461036d57508063095ea7b31461034357806318160ddd1461032457806323b872dd14610278578063313ce5671461025c57806370a082311461022457806395d89b4114610103578063a9059cbb146100ce5763dd62ed3e14610083575f80fd5b346100ca57816003193601126100ca5760209282916100a06104a7565b6100a86104c1565b6001600160a01b03918216845291865283832091168252845220549051908152f35b8280fd5b5050346100ff57806003193601126100ff576020906100f86100ee6104a7565b60243590336104d7565b5160018152f35b5080fd5b509190346100ff57816003193601126100ff5780519082600180549081811c9080831692831561021a575b6020938484108114610207578388529081156101eb5750600114610196575b505050829003601f01601f191682019267ffffffffffffffff841183851017610183575082918261017f925282610460565b0390f35b634e487b7160e01b815260418552602490fd5b8087529192508591837fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b8385106101d757505050508301015f808061014d565b8054888601830152930192849082016101c1565b60ff1916878501525050151560051b84010190505f808061014d565b634e487b7160e01b895260228a52602489fd5b91607f169161012e565b5050346100ff5760203660031901126100ff5760209181906001600160a01b0361024c6104a7565b1681526003845220549051908152f35b5050346100ff57816003193601126100ff576020905160128152f35b508290346100ff5760603660031901126100ff576102946104a7565b61029c6104c1565b6001600160a01b038216845260208381528585203386529052928490205460443593928482106102e1576020866100f88787876102dc838903338361061d565b6104d7565b606490602087519162461bcd60e51b8352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b5050346100ff57816003193601126100ff576020906002549051908152f35b5050346100ff57806003193601126100ff576020906100f86103636104a7565b602435903361061d565b84915083346100ca57826003193601126100ca57828354600181811c90808316928315610456575b60209384841081146102075783885290811561043a57506001146103e557505050829003601f01601f191682019267ffffffffffffffff841183851017610183575082918261017f925282610460565b8680529192508591837f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b838510610426575050505083010185808061014d565b805488860183015293019284908201610410565b60ff1916878501525050151560051b840101905085808061014d565b91607f1691610395565b602080825282518183018190529093925f5b82811061049357505060409293505f838284010152601f8019910116010190565b818101860151848201604001528501610472565b600435906001600160a01b03821682036104bd57565b5f80fd5b602435906001600160a01b03821682036104bd57565b6001600160a01b039081169182156105d85716918215610593575f828152600360205260408120549180831061054e57604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef95876020965260038652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152601b60248201527f45524332303a20696e73756666696369656e742062616c616e636500000000006044820152606490fd5b60405162461bcd60e51b815260206004820152601760248201527f45524332303a207472616e7366657220746f207a65726f0000000000000000006044820152606490fd5b60405162461bcd60e51b815260206004820152601960248201527f45524332303a207472616e736665722066726f6d207a65726f000000000000006044820152606490fd5b6001600160a01b039081169182156106b8571691821561067a5760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526004825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152601660248201527545524332303a20617070726f766520746f207a65726f60501b6044820152606490fd5b60405162461bcd60e51b815260206004820152601860248201527f45524332303a20617070726f76652066726f6d207a65726f00000000000000006044820152606490fdfea2646970667358221220aaffba2916c4bba704b47d3ff33e6da57efe8bfe4674263f333ce9ac45f0a3c664736f6c63430008140033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Transaction Hash | Method | Block | Age | From | To | Type | Item | ||
|---|---|---|---|---|---|---|---|---|---|
| no NFT transfers for this address yet | |||||||||
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| Block | Age | Parent Transaction Hash | Type | Method | From | To | Value | |
|---|---|---|---|---|---|---|---|---|
| no internal transactions found for this address yet (traced blocks + on-demand) | ||||||||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0xbd2345…bb9c81 | 20 days agoTue, 28 Jul 2026 16:00:17 UTC | Transfer | [0] 0x000000000000…638de0d3 [1] 0x000000000000…a97b3cfd data: 0x000000000000000000…e399641d |
| 0xbd2345…bb9c81 | 20 days agoTue, 28 Jul 2026 16:00:17 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…638de0d3 data: 0x000000000000000000…e399641d |
| 0xccc044…81f817 | 20 days agoTue, 28 Jul 2026 15:21:11 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…50ace918 data: 0x000000000000000000…a46c135e |
| 0xe69e36…06d8d4 | 20 days agoTue, 28 Jul 2026 15:21:08 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…28c3818d data: 0x000000000000000000…49c31d97 |
| 0x78892c…e65a59 | 20 days agoTue, 28 Jul 2026 15:21:02 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…206e8bf0 data: 0x000000000000000000…0a557088 |
| 0x7ff7ad…94d50c | 20 days agoTue, 28 Jul 2026 15:21:02 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…f22c59be data: 0x000000000000000000…d0805321 |
| 0x95ad64…041d49 | 20 days agoTue, 28 Jul 2026 15:20:52 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…8e938d81 data: 0x000000000000000000…bf43cfd0 |
| 0x0c85f9…a9f5dc | 20 days agoTue, 28 Jul 2026 15:20:51 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…73fb7ff0 data: 0x000000000000000000…3850d03a |
| 0x28188d…99e5b6 | 20 days agoTue, 28 Jul 2026 15:20:51 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…6cd7e037 data: 0x000000000000000000…2460c184 |
| 0xcdb60c…d399d5 | 20 days agoTue, 28 Jul 2026 15:20:50 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…57e9a270 data: 0x000000000000000000…1d81715b |
| 0x736918…7fcc79 | 20 days agoTue, 28 Jul 2026 15:20:50 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…f20be80d data: 0x000000000000000000…c43a1897 |
| 0x62dc9a…e2255e | 20 days agoTue, 28 Jul 2026 15:20:27 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…a97b3cfd data: 0x000000000000000000…87972b5c |
| 0x83a2a6…983114 | 20 days agoTue, 28 Jul 2026 15:20:09 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…57e9a270 data: 0x000000000000000000…28055f4c |
| 0xd307ec…4d0435 | 20 days agoTue, 28 Jul 2026 15:20:09 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…f20be80d data: 0x000000000000000000…0d875911 |
| 0xe47908…885fc3 | 20 days agoTue, 28 Jul 2026 15:20:02 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…6e2ac556 data: 0x000000000000000000…47b74536 |
| 0x9567fc…807d34 | 20 days agoTue, 28 Jul 2026 15:20:02 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…b7a80ec1 data: 0x000000000000000000…a0614829 |
| 0x2a7ac2…5cae01 | 20 days agoTue, 28 Jul 2026 15:19:58 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…d37d29d2 data: 0x000000000000000000…9fb8af0d |
| 0x82d31e…e1e74e | 20 days agoTue, 28 Jul 2026 15:19:58 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…7fb8ab95 data: 0x000000000000000000…08865b0e |
| 0xfa7fa0…ae7312 | 20 days agoTue, 28 Jul 2026 15:19:58 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…74ee7953 data: 0x000000000000000000…02fa073b |
| 0xb587c9…4c3b49 | 20 days agoTue, 28 Jul 2026 15:19:57 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…8e938d81 data: 0x000000000000000000…4e900cf5 |
| 0xec0dc6…e8d106 | 20 days agoTue, 28 Jul 2026 15:19:43 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…b7a80ec1 data: 0x000000000000000000…b43ea221 |
| 0x12435a…110adf | 20 days agoTue, 28 Jul 2026 15:19:38 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…74ee7953 data: 0x000000000000000000…09eabe21 |
| 0x50e7da…9749b8 | 20 days agoTue, 28 Jul 2026 15:19:34 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…7fb8ab95 data: 0x000000000000000000…9416d31c |
| 0x523a9b…ce78d1 | 20 days agoTue, 28 Jul 2026 15:19:32 UTC | Transfer | [0] 0x000000000000…19a354e7 [1] 0x000000000000…d37d29d2 data: 0x000000000000000000…1122fe13 |
| 0xcdf17f…fcdbdc | 20 days agoTue, 28 Jul 2026 15:19:26 UTC | Transfer | [0] 0x000000000000…8710d6e8 [1] 0x000000000000…19a354e7 data: 0x000000000000000000…bfcd8af8 |
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0x1db5a9…0f7a1f | Approve | 21,692,400 | 20 days agoTue, 28 Jul 2026 15:16:16 UTC | 0xa5fd…3cfd | IN | Hermes | $0.000 ETH | 0.00000131 |