// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
import {Ownable} from "./utils/Util.sol";
contract FWSToken is Ownable {
string public constant name = "Fake Wall Street";
string public constant symbol = "FWS";
uint8 public constant decimals = 18;
uint256 public constant MAX_SUPPLY = 1_000_000_000e18;
uint256 public totalSupply;
mapping(address => uint256) public balanceOf;
mapping(address => mapping(address => uint256)) public allowance;
mapping(address => bool) public exempt;
mapping(address => bool) public taxExempt;
mapping(address => bool) public taxedPair;
bool public gateOpen;
bool public configFrozen;
uint16 public taxBps = 100;
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
event GateOpened();
event ConfigFrozen();
event ExemptSet(address indexed account, bool isExempt);
event TaxExemptSet(address indexed account, bool isExempt);
event TaxedPairSet(address indexed pair, bool taxed);
event TaxSet(uint16 bps);
event TaxBurned(uint256 amount);
error BuysGated();
error TransfersGated();
error InsufficientBalance();
error InsufficientAllowance();
error ZeroAddress();
error ConfigIsFrozen();
error TaxTooHigh();
constructor(address owner_, address supplyRecipient) Ownable(owner_) {
if (supplyRecipient == address(0)) revert ZeroAddress();
exempt[owner_] = true;
exempt[supplyRecipient] = true;
totalSupply = MAX_SUPPLY;
balanceOf[supplyRecipient] = MAX_SUPPLY;
emit Transfer(address(0), supplyRecipient, MAX_SUPPLY);
}
function openGate() external onlyOwner {
gateOpen = true;
emit GateOpened();
}
function freezeConfig() external onlyOwner {
configFrozen = true;
emit ConfigFrozen();
}
function setExempt(address account, bool isExempt) external onlyOwner {
if (configFrozen) revert ConfigIsFrozen();
exempt[account] = isExempt;
emit ExemptSet(account, isExempt);
}
function setTaxExempt(address account, bool isExempt) external onlyOwner {
if (configFrozen) revert ConfigIsFrozen();
taxExempt[account] = isExempt;
emit TaxExemptSet(account, isExempt);
}
function setTaxedPair(address pair, bool taxed) external onlyOwner {
if (pair == address(0)) revert ZeroAddress();
if (configFrozen) revert ConfigIsFrozen();
taxedPair[pair] = taxed;
emit TaxedPairSet(pair, taxed);
}
function setTaxBps(uint16 bps) external onlyOwner {
if (configFrozen) revert ConfigIsFrozen();
if (bps > 300) revert TaxTooHigh();
taxBps = bps;
emit TaxSet(bps);
}
function approve(address spender, uint256 amount) external returns (bool) {
allowance[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}
function transfer(address to, uint256 amount) external returns (bool) {
_transfer(msg.sender, to, amount);
return true;
}
function transferFrom(address from, address to, uint256 amount) external returns (bool) {
_spendAllowance(from, amount);
_transfer(from, to, amount);
return true;
}
function burn(uint256 amount) external {
_burn(msg.sender, amount);
}
function burnFrom(address from, uint256 amount) external {
_spendAllowance(from, amount);
_burn(from, amount);
}
function _spendAllowance(address from, uint256 amount) internal {
uint256 a = allowance[from][msg.sender];
if (a != type(uint256).max) {
if (a < amount) revert InsufficientAllowance();
unchecked {
allowance[from][msg.sender] = a - amount;
}
}
}
function _transfer(address from, address to, uint256 amount) internal {
if (to == address(0)) revert ZeroAddress();
bool fromPair = taxedPair[from];
bool toPair = taxedPair[to];
if (!exempt[from] && !exempt[to] && !gateOpen) {
if (fromPair) revert BuysGated();
if (!toPair) revert TransfersGated();
}
if ((fromPair || toPair) && !taxExempt[from] && !taxExempt[to]) {
uint256 fee = (amount * taxBps) / 10_000;
if (fee != 0) {
_burn(from, fee);
emit TaxBurned(fee);
amount -= fee;
}
}
_move(from, to, amount);
}
function _move(address from, address to, uint256 amount) internal {
uint256 bal = balanceOf[from];
if (bal < amount) revert InsufficientBalance();
unchecked {
balanceOf[from] = bal - amount;
balanceOf[to] += amount;
}
emit Transfer(from, to, amount);
}
function _burn(address from, uint256 amount) internal {
uint256 bal = balanceOf[from];
if (bal < amount) revert InsufficientBalance();
unchecked {
balanceOf[from] = bal - amount;
totalSupply -= amount;
}
emit Transfer(from, address(0), amount);
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "owner_",
"type": "address",
"internalType": "address"
},
{
"name": "supplyRecipient",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "nonpayable"
},
{
"name": "BuysGated",
"type": "error",
"inputs": []
},
{
"name": "ConfigIsFrozen",
"type": "error",
"inputs": []
},
{
"name": "InsufficientAllowance",
"type": "error",
"inputs": []
},
{
"name": "InsufficientBalance",
"type": "error",
"inputs": []
},
{
"name": "NotOwner",
"type": "error",
"inputs": []
},
{
"name": "NotPendingOwner",
"type": "error",
"inputs": []
},
{
"name": "TaxTooHigh",
"type": "error",
"inputs": []
},
{
"name": "TransfersGated",
"type": "error",
"inputs": []
},
{
"name": "ZeroAddress",
"type": "error",
"inputs": []
},
{
"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": "ConfigFrozen",
"type": "event",
"inputs": [],
"anonymous": false
},
{
"name": "ExemptSet",
"type": "event",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "isExempt",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"name": "GateOpened",
"type": "event",
"inputs": [],
"anonymous": false
},
{
"name": "OwnershipTransferred",
"type": "event",
"inputs": [
{
"name": "previousOwner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "newOwner",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"name": "TaxBurned",
"type": "event",
"inputs": [
{
"name": "amount",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "TaxExemptSet",
"type": "event",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "isExempt",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"name": "TaxSet",
"type": "event",
"inputs": [
{
"name": "bps",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
}
],
"anonymous": false
},
{
"name": "TaxedPairSet",
"type": "event",
"inputs": [
{
"name": "pair",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "taxed",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"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": "MAX_SUPPLY",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "acceptOwnership",
"type": "function",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "allowance",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
},
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "approve",
"type": "function",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "amount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "balanceOf",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "burn",
"type": "function",
"inputs": [
{
"name": "amount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "burnFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "amount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "configFrozen",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "view"
},
{
"name": "exempt",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "freezeConfig",
"type": "function",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "gateOpen",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "openGate",
"type": "function",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "owner",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "pendingOwner",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "setExempt",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "isExempt",
"type": "bool",
"internalType": "bool"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "setTaxBps",
"type": "function",
"inputs": [
{
"name": "bps",
"type": "uint16",
"internalType": "uint16"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "setTaxExempt",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "isExempt",
"type": "bool",
"internalType": "bool"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "setTaxedPair",
"type": "function",
"inputs": [
{
"name": "pair",
"type": "address",
"internalType": "address"
},
{
"name": "taxed",
"type": "bool",
"internalType": "bool"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "symbol",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "taxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "taxExempt",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "taxedPair",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"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": "amount",
"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": "amount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "transferOwnership",
"type": "function",
"inputs": [
{
"name": "next",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
}
]0x60803461016557601f610e4338819003918201601f19168301916001600160401b0383118484101761016957808492604094855283398101031261016557610052602061004b8361017d565b920161017d565b5f80546001600160a01b0319166001600160a01b03909316928317815560405192919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a36008805463ffff00001916626400001790556001600160a01b03169182156101565760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef915f9384526005825260408420600160ff198254161790558484526005825260408420600160ff198254161790556b033b2e3c9fd0803ce8000000600255848452600382526b033b2e3c9fd0803ce800000060408520556b033b2e3c9fd0803ce80000008152a3604051610cb190816101928239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036101655756fe60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146108d5578063095ea7b31461085c57806318160ddd1461083f5780631ac6d2bf146107b95780631dc610401461074957806323b872dd146107125780632bb15f03146106bc578063313ce567146106a157806332cb6b0c1461067b5780633eacd2f81461065757806342966c681461063a57806370a08231146106025780637113e855146105c557806379ba50971461054d57806379cc67901461051c57806382dc7836146104c85780638da5cb5b146104a157806395d89b411461043c5780639fde54f5146103c1578063a9059cbb14610390578063b35a72001461036e578063bd1ffe2e14610349578063d0f5a9bc1461029e578063d1ecfc6814610261578063dd62ed3e14610211578063e30c3978146101e9578063f1320af2146101ac5763f2fde38b1461014d575f80fd5b346101a85760203660031901126101a857610166610955565b5f546001600160a01b0316330361019957600180546001600160a01b0319166001600160a01b0392909216919091179055005b6330cd747160e01b5f5260045ffd5b5f80fd5b346101a85760203660031901126101a8576001600160a01b036101cd610955565b165f526005602052602060ff60405f2054166040519015158152f35b346101a8575f3660031901126101a8576001546040516001600160a01b039091168152602090f35b346101a85760403660031901126101a85761022a610955565b61023261096b565b6001600160a01b039182165f908152600460209081526040808320949093168252928352819020549051908152f35b346101a85760203660031901126101a8576001600160a01b03610282610955565b165f526006602052602060ff60405f2054166040519015158152f35b346101a85760203660031901126101a85760043561ffff8116908181036101a8575f546001600160a01b03163303610199576008549160ff8360081c1661033a5761012c811161032b577fc4160ed687180563eb94a12a63488e5a197cbef68df17c267ee648a9df83b7de9263ffff000060209360101b169063ffff0000191617600855604051908152a1005b632bc7b84d60e21b5f5260045ffd5b63a8742ad560e01b5f5260045ffd5b346101a8575f3660031901126101a857602060ff60085460081c166040519015158152f35b346101a8575f3660031901126101a857602060ff600854166040519015158152f35b346101a85760403660031901126101a8576103b66103ac610955565b6024359033610a26565b602060405160018152f35b346101a8576103cf36610981565b5f549091906001600160a01b031633036101995760ff60085460081c1661033a5760207ff33950bf7aa3300efb48f7896f309484c287418977abeba9f08f12cbe451d36a9160018060a01b031692835f52600582526104318160405f206109b0565b6040519015158152a2005b346101a8575f3660031901126101a85760408051908101906001600160401b0382118183101761048d5761048991604052600381526246575360e81b60208201526040519182918261092b565b0390f35b634e487b7160e01b5f52604160045260245ffd5b346101a8575f3660031901126101a8575f546040516001600160a01b039091168152602090f35b346101a8575f3660031901126101a8575f546001600160a01b0316330361019957600160ff1960085416176008557f878cd544095a97429b229424af6e8a4c58f4eb170a33eea3f1af21a9c53350845f80a1005b346101a85760403660031901126101a85761054b610538610955565b6024359061054682826109c1565b610c0a565b005b346101a8575f3660031901126101a8576001546001600160a01b03811633036105b6575f543360018060a01b0382167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a36001600160a01b031990811633175f5516600155005b630614e5c760e21b5f5260045ffd5b346101a85760203660031901126101a8576001600160a01b036105e6610955565b165f526007602052602060ff60405f2054166040519015158152f35b346101a85760203660031901126101a8576001600160a01b03610623610955565b165f526003602052602060405f2054604051908152f35b346101a85760203660031901126101a85761054b60043533610c0a565b346101a8575f3660031901126101a857602061ffff60085460101c16604051908152f35b346101a8575f3660031901126101a857604051676765c793fa10079d601b1b8152602090f35b346101a8575f3660031901126101a857602060405160128152f35b346101a8575f3660031901126101a8575f546001600160a01b031633036101995761010061ff001960085416176008557ffe8292577024c8a70fcfbe74211dedb793d98ac31e1aefeb3a57b726b28bec3f5f80a1005b346101a85760603660031901126101a8576103b661072e610955565b61073661096b565b6044359161074483826109c1565b610a26565b346101a85761075736610981565b5f549091906001600160a01b031633036101995760ff60085460081c1661033a5760207f8af52ca6865dd040a1247f4d247e92db436b658abb69ed82e9efa8a7de0602e99160018060a01b031692835f52600682526104318160405f206109b0565b346101a8576107c736610981565b5f549091906001600160a01b03163303610199576001600160a01b03169081156108305760ff60085460081c1661033a5760207f5a84bc9eb0b189da4cee8cdbba94bed5e000218ed25c97f2e83aa71fdeb488ff91835f52600782526104318160405f206109b0565b63d92e233d60e01b5f5260045ffd5b346101a8575f3660031901126101a8576020600254604051908152f35b346101a85760403660031901126101a857610875610955565b335f8181526004602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346101a8575f3660031901126101a85760408051908101906001600160401b0382118183101761048d5761048991604052601081526f11985ad94815d85b1b0814dd1c99595d60821b6020820152604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101a857565b602435906001600160a01b03821682036101a857565b60409060031901126101a8576004356001600160a01b03811681036101a8579060243580151581036101a85790565b9060ff801983541691151516179055565b6001600160a01b03165f8181526004602090815260408083203384529091529020549190600183016109f257505050565b818310610a17575f908152600460209081526040808320338452909152902091039055565b6313be252b60e01b5f5260045ffd5b6001600160a01b039091169182156108305760018060a01b03821691825f52600760205260ff60405f205416845f52600760205260ff60405f205416845f5260056020528160ff60405f2054161580610bf1575b80610be4575b610bb6575b9115610bae575b5080610b97575b80610b80575b610afc575b50815f52600360205260405f2054818110610aed57815f80516020610c5c83398151915292602092855f52600384520360405f2055845f526003825260405f20818154019055604051908152a3565b631e9acf1760e31b5f5260045ffd5b61ffff60085460101c16808302908382041483151715610b6c5761271090049081610b28575b50610a9e565b81610b3291610c0a565b7f7bc024189123a7a1a3d9dfd02ddea903a7022b7461326ff2bce02e7c5a563cab6020604051838152a18103908111610b6c575f80610b22565b634e487b7160e01b5f52601160045260245ffd5b50835f52600660205260ff60405f20541615610a99565b50825f52600660205260ff60405f20541615610a93565b90505f610a8c565b610bd5578015610bc65781610a85565b632670840360e01b5f5260045ffd5b63bcbfee9760e01b5f5260045ffd5b5060ff6008541615610a80565b5050855f5260056020528160ff60405f20541615610a7a565b6001600160a01b03165f8181526003602052604090205491808310610aed576020815f80516020610c5c833981519152925f95858752600384520360408620558060025403600255604051908152a356feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220f2c483356c78b91f9ae35b9ec7b5d65ca8a05beb94dc0a9a6bdc270dd4c56a3264736f6c634300081a0033000000000000000000000000a77c0a9ea8e75b43226cef3b37665a52fe0a7319000000000000000000000000a77c0a9ea8e75b43226cef3b37665a52fe0a7319
0x60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146108d5578063095ea7b31461085c57806318160ddd1461083f5780631ac6d2bf146107b95780631dc610401461074957806323b872dd146107125780632bb15f03146106bc578063313ce567146106a157806332cb6b0c1461067b5780633eacd2f81461065757806342966c681461063a57806370a08231146106025780637113e855146105c557806379ba50971461054d57806379cc67901461051c57806382dc7836146104c85780638da5cb5b146104a157806395d89b411461043c5780639fde54f5146103c1578063a9059cbb14610390578063b35a72001461036e578063bd1ffe2e14610349578063d0f5a9bc1461029e578063d1ecfc6814610261578063dd62ed3e14610211578063e30c3978146101e9578063f1320af2146101ac5763f2fde38b1461014d575f80fd5b346101a85760203660031901126101a857610166610955565b5f546001600160a01b0316330361019957600180546001600160a01b0319166001600160a01b0392909216919091179055005b6330cd747160e01b5f5260045ffd5b5f80fd5b346101a85760203660031901126101a8576001600160a01b036101cd610955565b165f526005602052602060ff60405f2054166040519015158152f35b346101a8575f3660031901126101a8576001546040516001600160a01b039091168152602090f35b346101a85760403660031901126101a85761022a610955565b61023261096b565b6001600160a01b039182165f908152600460209081526040808320949093168252928352819020549051908152f35b346101a85760203660031901126101a8576001600160a01b03610282610955565b165f526006602052602060ff60405f2054166040519015158152f35b346101a85760203660031901126101a85760043561ffff8116908181036101a8575f546001600160a01b03163303610199576008549160ff8360081c1661033a5761012c811161032b577fc4160ed687180563eb94a12a63488e5a197cbef68df17c267ee648a9df83b7de9263ffff000060209360101b169063ffff0000191617600855604051908152a1005b632bc7b84d60e21b5f5260045ffd5b63a8742ad560e01b5f5260045ffd5b346101a8575f3660031901126101a857602060ff60085460081c166040519015158152f35b346101a8575f3660031901126101a857602060ff600854166040519015158152f35b346101a85760403660031901126101a8576103b66103ac610955565b6024359033610a26565b602060405160018152f35b346101a8576103cf36610981565b5f549091906001600160a01b031633036101995760ff60085460081c1661033a5760207ff33950bf7aa3300efb48f7896f309484c287418977abeba9f08f12cbe451d36a9160018060a01b031692835f52600582526104318160405f206109b0565b6040519015158152a2005b346101a8575f3660031901126101a85760408051908101906001600160401b0382118183101761048d5761048991604052600381526246575360e81b60208201526040519182918261092b565b0390f35b634e487b7160e01b5f52604160045260245ffd5b346101a8575f3660031901126101a8575f546040516001600160a01b039091168152602090f35b346101a8575f3660031901126101a8575f546001600160a01b0316330361019957600160ff1960085416176008557f878cd544095a97429b229424af6e8a4c58f4eb170a33eea3f1af21a9c53350845f80a1005b346101a85760403660031901126101a85761054b610538610955565b6024359061054682826109c1565b610c0a565b005b346101a8575f3660031901126101a8576001546001600160a01b03811633036105b6575f543360018060a01b0382167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a36001600160a01b031990811633175f5516600155005b630614e5c760e21b5f5260045ffd5b346101a85760203660031901126101a8576001600160a01b036105e6610955565b165f526007602052602060ff60405f2054166040519015158152f35b346101a85760203660031901126101a8576001600160a01b03610623610955565b165f526003602052602060405f2054604051908152f35b346101a85760203660031901126101a85761054b60043533610c0a565b346101a8575f3660031901126101a857602061ffff60085460101c16604051908152f35b346101a8575f3660031901126101a857604051676765c793fa10079d601b1b8152602090f35b346101a8575f3660031901126101a857602060405160128152f35b346101a8575f3660031901126101a8575f546001600160a01b031633036101995761010061ff001960085416176008557ffe8292577024c8a70fcfbe74211dedb793d98ac31e1aefeb3a57b726b28bec3f5f80a1005b346101a85760603660031901126101a8576103b661072e610955565b61073661096b565b6044359161074483826109c1565b610a26565b346101a85761075736610981565b5f549091906001600160a01b031633036101995760ff60085460081c1661033a5760207f8af52ca6865dd040a1247f4d247e92db436b658abb69ed82e9efa8a7de0602e99160018060a01b031692835f52600682526104318160405f206109b0565b346101a8576107c736610981565b5f549091906001600160a01b03163303610199576001600160a01b03169081156108305760ff60085460081c1661033a5760207f5a84bc9eb0b189da4cee8cdbba94bed5e000218ed25c97f2e83aa71fdeb488ff91835f52600782526104318160405f206109b0565b63d92e233d60e01b5f5260045ffd5b346101a8575f3660031901126101a8576020600254604051908152f35b346101a85760403660031901126101a857610875610955565b335f8181526004602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346101a8575f3660031901126101a85760408051908101906001600160401b0382118183101761048d5761048991604052601081526f11985ad94815d85b1b0814dd1c99595d60821b6020820152604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101a857565b602435906001600160a01b03821682036101a857565b60409060031901126101a8576004356001600160a01b03811681036101a8579060243580151581036101a85790565b9060ff801983541691151516179055565b6001600160a01b03165f8181526004602090815260408083203384529091529020549190600183016109f257505050565b818310610a17575f908152600460209081526040808320338452909152902091039055565b6313be252b60e01b5f5260045ffd5b6001600160a01b039091169182156108305760018060a01b03821691825f52600760205260ff60405f205416845f52600760205260ff60405f205416845f5260056020528160ff60405f2054161580610bf1575b80610be4575b610bb6575b9115610bae575b5080610b97575b80610b80575b610afc575b50815f52600360205260405f2054818110610aed57815f80516020610c5c83398151915292602092855f52600384520360405f2055845f526003825260405f20818154019055604051908152a3565b631e9acf1760e31b5f5260045ffd5b61ffff60085460101c16808302908382041483151715610b6c5761271090049081610b28575b50610a9e565b81610b3291610c0a565b7f7bc024189123a7a1a3d9dfd02ddea903a7022b7461326ff2bce02e7c5a563cab6020604051838152a18103908111610b6c575f80610b22565b634e487b7160e01b5f52601160045260245ffd5b50835f52600660205260ff60405f20541615610a99565b50825f52600660205260ff60405f20541615610a93565b90505f610a8c565b610bd5578015610bc65781610a85565b632670840360e01b5f5260045ffd5b63bcbfee9760e01b5f5260045ffd5b5060ff6008541615610a80565b5050855f5260056020528160ff60405f20541615610a7a565b6001600160a01b03165f8181526003602052604090205491808310610aed576020815f80516020610c5c833981519152925f95858752600384520360408620558060025403600255604051908152a356feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220f2c483356c78b91f9ae35b9ec7b5d65ca8a05beb94dc0a9a6bdc270dd4c56a3264736f6c634300081a0033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0x48a21a…4545dc | Approve | 39,162,274 | 7 mins agoMon, 17 Aug 2026 21:32:24 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000096 | |
| 0x121818…ae4a1c | Approve | 39,150,300 | 27 mins agoMon, 17 Aug 2026 21:12:24 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000094 | |
| 0x25236b…f8e47c | Approve | 39,148,421 | 30 mins agoMon, 17 Aug 2026 21:09:16 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x74d052…2f7e01 | Approve | 39,148,214 | 30 mins agoMon, 17 Aug 2026 21:08:55 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x0447f2…5e0c0f | Approve | 39,147,949 | 31 mins agoMon, 17 Aug 2026 21:08:28 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x73986d…85c6fa | Approve | 39,147,451 | 32 mins agoMon, 17 Aug 2026 21:07:38 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x0aa8ae…d2e903 | Approve | 39,143,174 | 39 mins agoMon, 17 Aug 2026 21:00:29 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0xc957df…acfd5f | Approve | 39,139,002 | 46 mins agoMon, 17 Aug 2026 20:53:30 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0xac5e4c…79cd36 | Approve | 39,135,126 | 52 mins agoMon, 17 Aug 2026 20:47:02 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000093 | |
| 0xf8c64a…9375a2 | Approve | 39,134,400 | 53 mins agoMon, 17 Aug 2026 20:45:49 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000093 | |
| 0xc2ce38…7503e1 | Approve | 39,132,230 | 57 mins agoMon, 17 Aug 2026 20:42:12 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x0cac0e…003b56 | Approve | 39,116,537 | 1 hr agoMon, 17 Aug 2026 20:15:59 UTC | 0xab8f…352a | IN | Fake Wall Street | $0.000 ETH | 0.00000095 | |
| 0x50cf38…66c4f0 | Approve | 39,116,366 | 1 hr agoMon, 17 Aug 2026 20:15:41 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000095 | |
| 0xe7d754…a96ed2 | Approve | 39,112,620 | 1 hr agoMon, 17 Aug 2026 20:09:26 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x075fa9…24ec30 | Approve | 39,077,553 | 2 hrs agoMon, 17 Aug 2026 19:10:45 UTC | 0x5fe7…9a87 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x1ed933…d1c6f6 | Approve | 39,063,789 | 2 hrs agoMon, 17 Aug 2026 18:47:45 UTC | 0xf5eb…2575 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0x3bd75e…239585 | Approve | 39,047,574 | 3 hrs agoMon, 17 Aug 2026 18:20:39 UTC | 0xee2c…1ebb | IN | Fake Wall Street | $0.000 ETH | 0.00000091 | |
| 0x7518ee…3ebcef | Approve | 39,037,797 | 3 hrs agoMon, 17 Aug 2026 18:04:19 UTC | 0x17c5…4204 | IN | Fake Wall Street | $0.000 ETH | 0.00000093 | |
| 0xe9e9a0…fd090f | Approve | 39,025,111 | 3 hrs agoMon, 17 Aug 2026 17:43:07 UTC | 0x7af4…be79 | IN | Fake Wall Street | $0.000 ETH | 0.00000091 | |
| 0x51866b…86b4ab | Approve | 39,024,415 | 3 hrs agoMon, 17 Aug 2026 17:41:57 UTC | 0x7af4…be79 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0xc0e2e7…ca3d69 | Approve | 39,008,541 | 4 hrs agoMon, 17 Aug 2026 17:15:25 UTC | 0x8df4…acb9 | IN | Fake Wall Street | $0.000 ETH | 0.00000095 | |
| 0x23577f…e595f2 | Approve | 38,988,279 | 4 hrs agoMon, 17 Aug 2026 16:41:35 UTC | 0x6897…0ce3 | IN | Fake Wall Street | $0.000 ETH | 0.00000094 | |
| 0xeeea4e…cc707f | Approve | 38,975,916 | 5 hrs agoMon, 17 Aug 2026 16:20:56 UTC | 0xbf2a…81f2 | IN | Fake Wall Street | $0.000 ETH | 0.00000092 | |
| 0xf7b624…1aa89d | Approve | 38,970,203 | 5 hrs agoMon, 17 Aug 2026 16:11:23 UTC | 0xbc91…2207 | IN | Fake Wall Street | $0.000 ETH | 0.00000094 | |
| 0xa80b7a…ca0e51 | Approve | 38,969,951 | 5 hrs agoMon, 17 Aug 2026 16:10:57 UTC | 0xab8f…352a | IN | Fake Wall Street | $0.000 ETH | 0.00000095 |
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| Transaction Hash | Method | Block | Age | From | To | Type | Item | ||
|---|---|---|---|---|---|---|---|---|---|
| no NFT 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) | ||||||||
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0x12be41…ce0043 | 1 min agoMon, 17 Aug 2026 21:37:53 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…dd255fe4 data: 0x000000000000000000…38dad315 |
| 0x0afc8b…0b1584 | 4 mins agoMon, 17 Aug 2026 21:35:07 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…99f876b4 data: 0x000000000000000000…fc1e0a26 |
| 0x3ac3a4…a77b5d | 4 mins agoMon, 17 Aug 2026 21:35:06 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…cad67470 data: 0x000000000000000000…720b08bc |
| 0x0d11ce…4ff9ce | 4 mins agoMon, 17 Aug 2026 21:35:04 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…b7856c83 data: 0x000000000000000000…d8b85789 |
| 0x4e3a90…679a2b | 4 mins agoMon, 17 Aug 2026 21:35:04 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…67b3d41d data: 0x000000000000000000…298341c0 |
| 0xa9aa91…61acd4 | 4 mins agoMon, 17 Aug 2026 21:35:03 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…dfde91ce data: 0x000000000000000000…234e296b |
| 0x1fb200…e1c46b | 4 mins agoMon, 17 Aug 2026 21:35:01 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…c576babc data: 0x000000000000000000…89124b81 |
| 0xd03136…5f7c06 | 4 mins agoMon, 17 Aug 2026 21:35:01 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…24e63194 data: 0x000000000000000000…18575bc1 |
| 0x94310f…773213 | 4 mins agoMon, 17 Aug 2026 21:35:01 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…b1a61184 data: 0x000000000000000000…ed53fb24 |
| 0xa40615…cd8476 | 4 mins agoMon, 17 Aug 2026 21:35:00 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…d46e72ac data: 0x000000000000000000…c6c9bb32 |
| 0x2f7137…15e9cf | 4 mins agoMon, 17 Aug 2026 21:34:58 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…563e36e3 data: 0x000000000000000000…50b29738 |
| 0x69b43a…94d1b3 | 4 mins agoMon, 17 Aug 2026 21:34:58 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…c8e6cdcf data: 0x000000000000000000…a8b772d4 |
| 0x097dd4…cf2f9a | 4 mins agoMon, 17 Aug 2026 21:34:58 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…91919cd4 data: 0x000000000000000000…622090a9 |
| 0x654105…2fd9cb | 4 mins agoMon, 17 Aug 2026 21:34:56 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…0c5006bc data: 0x000000000000000000…f355af36 |
| 0x1b77da…91c3c6 | 4 mins agoMon, 17 Aug 2026 21:34:56 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…e777c1a0 data: 0x000000000000000000…034b357b |
| 0xe770fd…ff49b0 | 4 mins agoMon, 17 Aug 2026 21:34:55 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…21cc9a87 data: 0x000000000000000000…b65de47a |
| 0x7a734e…4d62e5 | 4 mins agoMon, 17 Aug 2026 21:34:53 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…1a2f7fa5 data: 0x000000000000000000…b708c4a4 |
| 0x067ce3…773448 | 4 mins agoMon, 17 Aug 2026 21:34:53 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…e48cb799 data: 0x000000000000000000…7e0682ec |
| 0x01b6d4…006097 | 4 mins agoMon, 17 Aug 2026 21:34:52 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…3704e8b2 data: 0x000000000000000000…d9850cfa |
| 0xd7e655…624cea | 5 mins agoMon, 17 Aug 2026 21:34:34 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…b21f3301 data: 0x000000000000000000…68ce8809 |
| 0xcc9078…6e20ac | 7 mins agoMon, 17 Aug 2026 21:32:27 UTC | Transfer | [0] 0x000000000000…21cc9a87 [1] 0x000000000000…8a9ba98a data: 0x000000000000000000…4c305376 |
| 0xcc9078…6e20ac | 7 mins agoMon, 17 Aug 2026 21:32:27 UTC | 0x7bc024…3cab | data: 0x000000000000000000…2262c032 |
| 0xcc9078…6e20ac | 7 mins agoMon, 17 Aug 2026 21:32:27 UTC | Transfer | [0] 0x000000000000…21cc9a87 [1] 0x000000000000…00000000 data: 0x000000000000000000…2262c032 |
| 0x48a21a…4545dc | 7 mins agoMon, 17 Aug 2026 21:32:24 UTC | Approval | [0] 0x000000000000…21cc9a87 [1] 0x000000000000…0e0559f5 data: 0x000000000000000000…6e9313a8 |
| 0xb379fd…98d063 | 7 mins agoMon, 17 Aug 2026 21:32:07 UTC | Transfer | [0] 0x000000000000…5eb19c85 [1] 0x000000000000…a4605877 data: 0x000000000000000000…51bec499 |