pragma solidity ^0.8.20;
import {IERC20} from "./interfaces/IERC20.sol";
import {IUniswapV2Router02} from "./interfaces/IUniswapV2Router02.sol";
import {DividendTracker} from "./DividendTracker.sol";
interface ITokenDeployer {
function factory() external view returns (address);
}
interface ITaxProcessorForToken {
function processTaxTokens(uint256 taxAmount) external returns (int8 liqThresholdDirection);
}
interface IFactoryOwnerForToken {
function owner() external view returns (address);
function globalAutoProcessTaxOnSell() external view returns (bool);
}
contract Token is IERC20 {
address internal constant DEAD = 0x000000000000000000000000000000000000dEaD;
uint16 internal constant BPS_BASE = 10000;
uint16 internal constant MAX_TOTAL_TAX_BPS = 500;
uint256 public constant MIN_LIQ_THRESHOLD = 50_000 ether;
uint256 public constant START_LIQ_THRESHOLD = 400_000 ether;
enum PoolState {
BondingCurve,
Migrating,
TaxEnforcedAntiFarmer,
TaxEnforced,
TaxFree
}
string public name;
string public symbol;
uint8 public constant decimals = 18;
uint256 public override totalSupply;
mapping(address => uint256) public override balanceOf;
mapping(address => mapping(address => uint256)) public override allowance;
address public immutable deployer;
address public factory;
address public router;
address public weth;
address public treasury;
address public sale;
address public taxProcessor;
DividendTracker public dividendTracker;
address public pair;
bool public launched;
bool public notLiquidating;
bool public autoProcessTaxOnSell;
uint256 public liquidationThreshold;
uint256 public initialLiquidationThreshold;
uint256 public minLiquidationThreshold;
uint16 public buyTaxBps;
uint16 public sellTaxBps;
uint16 public totalTaxBps;
uint16 public burnTaxBps;
uint16 public marketingTaxBps;
uint16 public dividendTaxBps;
uint16 public liquidityTaxBps;
uint16 public immutable slippageBps;
event TaxTaken(address indexed from, address indexed to, uint256 taxAmount, uint16 taxBps);
event TaxLiquidationError(bytes reason);
event AutoProcessTaxOnSellUpdated(bool enabled);
event LiquidationThresholdUpdated(uint256 oldThreshold, uint256 newThreshold, int8 direction);
event DividendSyncFailed(address indexed account);
event DividendBatchProcessFailed();
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
struct InitConfig {
string name;
string symbol;
uint256 totalSupply;
address router;
address treasury;
uint16 platformShareBps;
uint16 burnTaxBps;
uint16 marketingTaxBps;
uint16 dividendTaxBps;
uint16 liquidityTaxBps;
address marketingWallet;
address dividendToken;
uint256 swapThreshold;
address sale;
address tracker;
address taxProcessor;
uint256 dividendProcessGas;
uint256 maxDividendProcessAccounts;
}
modifier onlyTaxProcessor() {
require(msg.sender == taxProcessor, "ONLY_TAX_PROCESSOR");
_;
}
constructor(uint16 _slippageBps) {
deployer = msg.sender;
require(_slippageBps >= 100 && _slippageBps <= 2000, "BAD_SLIPPAGE");
slippageBps = _slippageBps;
}
function init(InitConfig calldata c) external {
require(factory == address(0), "INITIALIZED");
require(msg.sender == ITokenDeployer(deployer).factory(), "ONLY_FACTORY");
require(c.sale != address(0), "ZERO_SALE");
require(c.tracker != address(0), "ZERO_TRACKER");
require(c.taxProcessor != address(0), "ZERO_TAX_PROCESSOR");
uint16 taxSum = c.burnTaxBps + c.marketingTaxBps + c.dividendTaxBps + c.liquidityTaxBps;
require(taxSum <= MAX_TOTAL_TAX_BPS, "TAX_TOO_HIGH");
factory = msg.sender;
name = c.name;
symbol = c.symbol;
totalSupply = c.totalSupply;
router = c.router;
weth = IUniswapV2Router02(c.router).WETH();
treasury = c.treasury;
sale = c.sale;
taxProcessor = c.taxProcessor;
dividendTracker = DividendTracker(payable(c.tracker));
notLiquidating = true;
burnTaxBps = c.burnTaxBps;
marketingTaxBps = c.marketingTaxBps;
dividendTaxBps = c.dividendTaxBps;
liquidityTaxBps = c.liquidityTaxBps;
initialLiquidationThreshold = c.swapThreshold;
liquidationThreshold = c.swapThreshold;
minLiquidationThreshold = c.swapThreshold < MIN_LIQ_THRESHOLD ? c.swapThreshold : MIN_LIQ_THRESHOLD;
totalTaxBps = taxSum;
buyTaxBps = taxSum;
sellTaxBps = taxSum;
dividendTracker.setExcluded(c.sale, true);
dividendTracker.setExcluded(c.taxProcessor, true);
balanceOf[c.sale] = c.totalSupply;
emit Transfer(address(0), c.sale, c.totalSupply);
}
function setLaunched(address _pair) external {
require(msg.sender == sale, "ONLY_SALE");
require(!launched, "LAUNCHED");
require(_pair != address(0), "ZERO_PAIR");
launched = true;
pair = _pair;
dividendTracker.setExcluded(_pair, true);
}
function approve(address spender, uint256 amount) external override returns (bool) {
_approve(msg.sender, spender, amount);
return true;
}
function increaseAllowance(address spender, uint256 added) external returns (bool) {
_approve(msg.sender, spender, allowance[msg.sender][spender] + added);
return true;
}
function decreaseAllowance(address spender, uint256 subtracted) external returns (bool) {
uint256 current = allowance[msg.sender][spender];
require(current >= subtracted, "ALLOWANCE_BELOW_ZERO");
_approve(msg.sender, spender, current - subtracted);
return true;
}
function transfer(address to, uint256 amount) external override returns (bool) {
_transfer(msg.sender, to, amount);
return true;
}
function transferFrom(address from, address to, uint256 amount) external override returns (bool) {
uint256 allowed = allowance[from][msg.sender];
if (allowed != type(uint256).max) {
require(allowed >= amount, "INSUFFICIENT_ALLOWANCE");
_approve(from, msg.sender, allowed - amount);
}
_transfer(from, to, amount);
return true;
}
function processTax(uint256 maxAmount) external returns (uint256 processed) {
uint256 bal = balanceOf[address(this)];
uint256 cap = liquidationThreshold;
uint256 amount = maxAmount == 0 || maxAmount > cap ? cap : maxAmount;
if (amount > bal) amount = bal;
require(amount > 0, "NO_TAX");
require(maxAmount == 0 || msg.sender == IFactoryOwnerForToken(factory).owner(), "ONLY_OWNER_PARTIAL");
require(maxAmount != 0 || bal >= cap, "BELOW_THRESHOLD");
(bool ok, int8 direction) = _processTaxAmount(amount);
if (ok) {
_adjustLiquidationThreshold(direction);
processed = amount;
}
}
function setAutoProcessTaxOnSell(bool enabled) external {
require(msg.sender == IFactoryOwnerForToken(factory).owner(), "ONLY_FACTORY_OWNER");
autoProcessTaxOnSell = enabled;
emit AutoProcessTaxOnSellUpdated(enabled);
}
function autoProcessTaxOnSellEnabled() public view returns (bool) {
if (autoProcessTaxOnSell) return true;
if (factory == address(0)) return false;
try IFactoryOwnerForToken(factory).globalAutoProcessTaxOnSell() returns (bool enabled) {
return enabled;
} catch {
return false;
}
}
function v2Router() external view returns (address) {
return router;
}
function quoteToken() external view returns (address) {
return weth;
}
function mainPool() external view returns (address) {
return pair;
}
function dividendContract() external view returns (address) {
return address(dividendTracker);
}
function state() external view returns (PoolState) {
return launched ? PoolState.TaxEnforced : PoolState.BondingCurve;
}
function taxRate() external view returns (uint16) {
return buyTaxBps > sellTaxBps ? buyTaxBps : sellTaxBps;
}
function buyTaxRate() external view returns (uint16) {
return buyTaxBps;
}
function sellTaxRate() external view returns (uint16) {
return sellTaxBps;
}
function getPoolStateData()
external
view
returns (
PoolState currentState,
uint16 currentBuyTaxRate,
uint16 currentSellTaxRate,
uint256 currentLiquidationThreshold,
uint256 currentTaxExpirationTime,
uint256 currentAntiFarmerExpirationTime
)
{
return (
launched ? PoolState.TaxEnforced : PoolState.BondingCurve,
buyTaxBps,
sellTaxBps,
liquidationThreshold,
0,
0
);
}
function notifyDividend(uint256 amount) external onlyTaxProcessor {
dividendTracker.distributeTokens(amount);
}
function _approve(address owner, address spender, uint256 amount) internal {
require(owner != address(0) && spender != address(0), "ZERO_ADDR");
allowance[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _transfer(address from, address to, uint256 amount) internal {
require(from != address(0) && to != address(0), "ZERO_ADDR");
require(balanceOf[from] >= amount, "INSUFFICIENT_BALANCE");
uint16 taxBps = _taxBps(from, to);
if (taxBps == 0) {
_basicTransfer(from, to, amount);
} else {
uint256 tax = (amount * taxBps) / BPS_BASE;
if (tax > 0) {
_basicTransfer(from, address(this), tax);
emit TaxTaken(from, to, tax, taxBps);
}
_basicTransfer(from, to, amount - tax);
}
if (launched) {
_syncDividend(from);
_syncDividend(to);
}
}
function _processTaxAmount(uint256 amount) internal returns (bool ok, int8 direction) {
_approve(address(this), taxProcessor, amount);
try ITaxProcessorForToken(taxProcessor).processTaxTokens(amount) returns (int8 d) {
_approve(address(this), taxProcessor, 0);
direction = d;
ok = true;
} catch (bytes memory reason) {
_approve(address(this), taxProcessor, 0);
emit TaxLiquidationError(reason);
uint256 fallbackAmount = amount;
uint256 remainingBalance = balanceOf[address(this)];
if (fallbackAmount > remainingBalance) fallbackAmount = remainingBalance;
if (fallbackAmount > 0) {
_basicTransfer(address(this), taxProcessor, fallbackAmount);
}
ok = false;
}
}
function _adjustLiquidationThreshold(int8 direction) internal {
if (direction == 0) return;
uint256 oldThreshold = liquidationThreshold;
uint256 threshold = oldThreshold;
if (direction > 0) {
threshold = (threshold * 101) / 100;
if (threshold > initialLiquidationThreshold) {
threshold = initialLiquidationThreshold;
}
} else {
threshold = (threshold * 99) / 100;
if (threshold < minLiquidationThreshold) {
threshold = minLiquidationThreshold;
}
}
if (threshold != oldThreshold) {
liquidationThreshold = threshold;
emit LiquidationThresholdUpdated(oldThreshold, threshold, direction);
}
}
function _taxBps(address from, address to) internal view returns (uint16) {
if (!launched || pair == address(0) || totalTaxBps == 0) return 0;
if (_isSystemAddress(from) || _isSystemAddress(to)) return 0;
if (from == pair) return buyTaxBps;
if (to == pair) return sellTaxBps;
return 0;
}
function _isSystemAddress(address account) internal view returns (bool) {
return account == address(this) ||
account == taxProcessor ||
account == sale ||
account == router ||
account == address(dividendTracker) ||
account == DEAD;
}
function _basicTransfer(address from, address to, uint256 amount) internal {
balanceOf[from] -= amount;
unchecked {
balanceOf[to] += amount;
}
emit Transfer(from, to, amount);
}
function _syncDividend(address account) internal {
if (account == address(0) || _isSystemAddress(account) || account == pair) return;
try dividendTracker.setBalance(account, balanceOf[account]) {} catch {
emit DividendSyncFailed(account);
}
}
receive() external payable {
revert("NO_ETH");
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "_slippageBps",
"type": "uint16",
"internalType": "uint16"
}
],
"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": "AutoProcessTaxOnSellUpdated",
"type": "event",
"inputs": [
{
"name": "enabled",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"name": "DividendBatchProcessFailed",
"type": "event",
"inputs": [],
"anonymous": false
},
{
"name": "DividendSyncFailed",
"type": "event",
"inputs": [
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"name": "LiquidationThresholdUpdated",
"type": "event",
"inputs": [
{
"name": "oldThreshold",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
},
{
"name": "newThreshold",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
},
{
"name": "direction",
"type": "int8",
"indexed": false,
"internalType": "int8"
}
],
"anonymous": false
},
{
"name": "TaxLiquidationError",
"type": "event",
"inputs": [
{
"name": "reason",
"type": "bytes",
"indexed": false,
"internalType": "bytes"
}
],
"anonymous": false
},
{
"name": "TaxTaken",
"type": "event",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "taxAmount",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
},
{
"name": "taxBps",
"type": "uint16",
"indexed": false,
"internalType": "uint16"
}
],
"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": "MIN_LIQ_THRESHOLD",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "START_LIQ_THRESHOLD",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"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": "autoProcessTaxOnSell",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "autoProcessTaxOnSellEnabled",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "balanceOf",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "burnTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "buyTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "buyTaxRate",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "view"
},
{
"name": "decreaseAllowance",
"type": "function",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "subtracted",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "deployer",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "dividendContract",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "dividendTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "dividendTracker",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract DividendTracker"
}
],
"stateMutability": "view"
},
{
"name": "factory",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "getPoolStateData",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "currentState",
"type": "uint8",
"internalType": "enum Token.PoolState"
},
{
"name": "currentBuyTaxRate",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "currentSellTaxRate",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "currentLiquidationThreshold",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "currentTaxExpirationTime",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "currentAntiFarmerExpirationTime",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "increaseAllowance",
"type": "function",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "added",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "init",
"type": "function",
"inputs": [
{
"name": "c",
"type": "tuple",
"components": [
{
"name": "name",
"type": "string",
"internalType": "string"
},
{
"name": "symbol",
"type": "string",
"internalType": "string"
},
{
"name": "totalSupply",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "router",
"type": "address",
"internalType": "address"
},
{
"name": "treasury",
"type": "address",
"internalType": "address"
},
{
"name": "platformShareBps",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "burnTaxBps",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "marketingTaxBps",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "dividendTaxBps",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "liquidityTaxBps",
"type": "uint16",
"internalType": "uint16"
},
{
"name": "marketingWallet",
"type": "address",
"internalType": "address"
},
{
"name": "dividendToken",
"type": "address",
"internalType": "address"
},
{
"name": "swapThreshold",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sale",
"type": "address",
"internalType": "address"
},
{
"name": "tracker",
"type": "address",
"internalType": "address"
},
{
"name": "taxProcessor",
"type": "address",
"internalType": "address"
},
{
"name": "dividendProcessGas",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "maxDividendProcessAccounts",
"type": "uint256",
"internalType": "uint256"
}
],
"internalType": "struct Token.InitConfig"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "initialLiquidationThreshold",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "launched",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "liquidationThreshold",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "liquidityTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "mainPool",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "marketingTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "minLiquidationThreshold",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "notLiquidating",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "notifyDividend",
"type": "function",
"inputs": [
{
"name": "amount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "pair",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "processTax",
"type": "function",
"inputs": [
{
"name": "maxAmount",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "processed",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "nonpayable"
},
{
"name": "quoteToken",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "router",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "sale",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "sellTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "sellTaxRate",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "setAutoProcessTaxOnSell",
"type": "function",
"inputs": [
{
"name": "enabled",
"type": "bool",
"internalType": "bool"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "setLaunched",
"type": "function",
"inputs": [
{
"name": "_pair",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "slippageBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "state",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "enum Token.PoolState"
}
],
"stateMutability": "view"
},
{
"name": "symbol",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "taxProcessor",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "taxRate",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "totalSupply",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "totalTaxBps",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"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": "treasury",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "v2Router",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "weth",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "receive",
"stateMutability": "payable"
}
]0x6080806040526004361015610049575b50361561001b57600080fd5b60405162461bcd60e51b815260206004820152600660248201526509c9ebe8aa8960d31b6044820152606490fd5b600090813560e01c9081630435738f14611a605750806306fdde03146119b3578063095ea7b31461198c57806318160ddd1461196e5780631abd6ef514611949578063217a4b701461179a57806323b872dd1461188f57806324024efd1461066e5780632bf738d3146118695780632c1f5216146116d1578063313ce5671461184d578063315502f21461182857806339509351146117c35780633fc8cef31461179a5780634031234c1461177c5780635322193a1461175e5780635744d8be14611739578063578c71d9146116fa5780636124e4e7146116d157806361d027b3146116a857806365761b951461163f578063691f224f146106935780636ad1fe021461161657806370a08231146115dd5780637377187b146115b8578063771a3a1d146115785780638091f3bf1461155257806384ae4fa614610cd857806395d89b4114610c0f5780639692912e146108f1578063a15d5da0146108cc578063a457c2d714610837578063a5a302d31461080e578063a8aa1b311461080e578063a9059cbb146107dc578063b2a52da71461073f578063b74b8edf1461071a578063c19d93fb146106de578063c45a0155146106b5578063c473413a14610693578063cffd129c1461066e578063d528e5d31461051f578063d5f39488146104da578063d91ae2da146104b4578063dc37b4b714610398578063dd62ed3e14610349578063de126e1814610325578063deadbc14146102fc578063e3a1afdc146102d7578063f3635019146102ae5763f887ea400361000f57346102ab57806003193601126102ab576006546040516001600160a01b039091168152602090f35b80fd5b50346102ab57806003193601126102ab57600a546040516001600160a01b039091168152602090f35b50346102ab57806003193601126102ab57602061ffff60105460601c16604051908152f35b50346102ab57806003193601126102ab576006546040516001600160a01b039091168152602090f35b50346102ab57806003193601126102ab57602060105461ffff60405191831c168152f35b50346102ab5760403660031901126102ab57610363611b42565b604061036d611b5d565b9260018060a01b03809316815260046020522091166000526020526020604060002054604051908152f35b50346102ab576020806003193601126104b0576004358015158091036104ac57600554604051638da5cb5b60e01b81526001600160a01b039184908290600490829086165afa9081156104a1578591610474575b5016330361043a57600c805460ff60b01b191660b083901b60ff60b01b161790556040519081527f7a9e1f1d05a44b945dad96f14f00c8dfc446cbec84383d8ce4b128bdae75bcb69190a180f35b60405162461bcd60e51b815260048101839052601260248201527127a7262cafa320a1aa27a92cafa7aba722a960711b6044820152606490fd5b6104949150843d861161049a575b61048c8183611adf565b810190611b96565b386103ec565b503d610482565b6040513d87823e3d90fd5b8280fd5b5080fd5b50346102ab57806003193601126102ab57602060ff600c5460b01c166040519015158152f35b50346102ab57806003193601126102ab576040517f000000000000000000000000005f841e201079cc047ac707b5f1b634719b74746001600160a01b03168152602090f35b50346102ab5760203660031901126102ab57610539611b42565b6009546001600160a01b03908116330361063d57600c549160ff8360a01c1661060d5781169081156105dc576001600160a81b03199092168117600160a01b17600c55600b5483921690813b156105d8578291604483926040519485938492630a0daf8960e21b84526004840152600160248401525af180156105cd576105bd5750f35b6105c690611ab6565b6102ab5780f35b6040513d84823e3d90fd5b5050fd5b60405162461bcd60e51b81526020600482015260096024820152682d22a927afa820a4a960b91b6044820152606490fd5b60405162461bcd60e51b81526020600482015260086024820152671310555390d2115160c21b6044820152606490fd5b60405162461bcd60e51b81526020600482015260096024820152684f4e4c595f53414c4560b81b6044820152606490fd5b50346102ab57806003193601126102ab57602061ffff60105460101c16604051908152f35b50346102ab57806003193601126102ab57602061ffff60105416604051908152f35b50346102ab57806003193601126102ab576005546040516001600160a01b039091168152602090f35b50346102ab57806003193601126102ab57600c5460a01c60ff16156107125750602060035b6107106040518092611b73565bf35b602090610703565b50346102ab57806003193601126102ab576020604051690a968163f0a57b4000008152f35b50346102ab5760203660031901126102ab57600a546001600160a01b0390811633036107a2578190600b5416803b1561079f578180916024604051809481936339b33ca760e11b835260043560048401525af180156105cd576105bd5750f35b50fd5b60405162461bcd60e51b815260206004820152601260248201527127a7262cafaa20ac2fa82927a1a2a9a9a7a960711b6044820152606490fd5b50346102ab5760403660031901126102ab576108036107f9611b42565b6024359033611dd4565b602060405160018152f35b50346102ab57806003193601126102ab57600c546040516001600160a01b039091168152602090f35b50346102ab5760403660031901126102ab57610851611b42565b60406024359233815260046020522060018060a01b038216600052602052604060002054828110610890576108039261088991611c36565b9033611d70565b60405162461bcd60e51b8152602060048201526014602482015273414c4c4f57414e43455f42454c4f575f5a45524f60601b6044820152606490fd5b50346102ab57806003193601126102ab5760206040516954b40b1f852bda0000008152f35b50346102ab57602090816003193601126102ab576004358130815260038452604081205491600d54811593849285159586610c06575b15610c00575081945b818611610bf7575b8515610bc9578381610b63575b15610b295792610b1e575b505015610ae7578060018060a01b0361096e8482600a541630611d70565b818682600a541660246040518094819363b8c06c5760e01b83528a60048401525af1839181610aab575b50610a9357503d15610a7a573d6001600160401b038111610a6657610a0660008051602061222a83398151915291604051906109dd8a601f19601f8401160183611adf565b81523d858a83013e5b6109f484600a541630611d0f565b6040519182918a83528a830190611b02565b0390a183308352600387526040832054808611610a5e575b5080610a49575b50505b610a37575b5050604051908152f35b610a42919250611f16565b3880610a2d565b610a5791600a54163061210d565b3880610a25565b905038610a1e565b634e487b7160e01b83526041600452602483fd5b60008051602061222a833981519152610a0660606109e6565b9250610aa49150600a541630611d0f565b6001610a28565b9091508781813d8311610ae0575b610ac38183611adf565b81010312610adc575180840b8103610adc579038610998565b8380fd5b503d610ab9565b60405162461bcd60e51b815260048101859052600f60248201526e10915313d5d7d512149154d213d311608a1b6044820152606490fd5b101590503880610950565b60405162461bcd60e51b815260048101899052601260248201527113d3931657d3d5d3915497d410549512505360721b6044820152606490fd5b50600554604051638da5cb5b60e01b81526001600160a01b03918a908290600490829086165afa908115610bbe578791610ba1575b50163314610945565b610bb891508a3d8c1161049a5761048c8183611adf565b38610b98565b6040513d89823e3d90fd5b60405162461bcd60e51b815260048101899052600660248201526509c9ebea882b60d31b6044820152606490fd5b94508094610938565b94610930565b50828111610927565b50346102ab57806003193601126102ab5760405160009060018054610c3381611a7c565b80845290828116908115610cb05750600114610c72575b610c6e83610c5a81870382611adf565b604051918291602083526020830190611b02565b0390f35b92508060005260209283600020916000925b828410610c9d57505050810190910190610c5a81610c4a565b8054858501870152928501928101610c84565b610c6e9550610c5a93506020915091849260ff191682840152151560051b8201019350610c4a565b50346102ab576003196020368201126104b0576001600160401b03600435116104b05761024090600435360301126102ab57600554906001600160a01b03821661151f5760405163c45a015560e01b81526020816004817f000000000000000000000000005f841e201079cc047ac707b5f1b634719b74746001600160a01b03165afa9081156105cd578291611500575b506001600160a01b031633036114cc576001600160a01b03610d906004356101a401611bb5565b161561149b576001600160a01b03610dad6004356101c401611bb5565b1615611467576001600160a01b03610dca6004356101e401611bb5565b161561142d57610e19610e0a610dfb610de760c460043501611bc9565b610df560e460043501611bc9565b90611bd8565b610df561010460043501611bc9565b610df561012460043501611bc9565b916101f461ffff8416116113f9576001600160a01b0319163317600555610e44600480350180611c04565b906001600160401b038211610a66578190610e5f8454611a7c565b601f81116113ac575b508390601f831160011461134657849261133b575b50508160011b916000199060031b1c19161781555b610ea6602460043501600435600401611c04565b906001600160401b038211610a66578190610ec2600154611a7c565b601f81116112e2575b508390601f831160011461126f578492611264575b50508160011b916000199060031b1c1916176001555b6004803560448101356002556020906064016001600160a01b03610f1982611bb5565b60068054919092166001600160a01b03199091161790556001600160a01b0390610f4290611bb5565b16604051928380926315ab88c960e31b82525afa9081156105cd578291611245575b50600780546001600160a01b0319166001600160a01b03928316179055610f8f600435608401611bb5565b60088054919092166001600160a01b03199091161790556001600160a01b03610fbd6101a460043501611bb5565b60098054919092166001600160a01b03199091161790556001600160a01b03610feb6101e460043501611bb5565b600a8054919092166001600160a01b03199091161790556001600160a01b036110196101c460043501611bb5565b600b80546001600160a01b031916929091169182179055600c805460ff60a81b1916600160a81b1790559161105260043560c401611bc9565b9061ffff6010548160401b61106b60e460043501611bc9565b60401b168260501b61108261010460043501611bc9565b60501b16908360601b61109a61012460043501611bc9565b60601b1692610184600435013580600e5580600d55690a968163f0a57b40000080821060001461123e57505b600f55848616602081901b6001600160701b03199092169590971660301b9490941717171717909117601091821b63ffff00001617905561110c6004356101a401611bb5565b91803b156104b057604051630a0daf8960e21b8082526001600160a01b039094166004820152600160248201529082908290604490829084905af180156105cd5761122f575b50600b54909182916001600160a01b0316906111736004356101e401611bb5565b823b1561122a576040519182526001600160a01b03166004820152600160248201529082908290604490829084905af180156105cd57611216575b506001600160a01b036111c66004356101a401611bb5565b16815260036020526040812060043560448101359091556001600160a01b03906111f3906101a401611bb5565b168160008051602061224a8339815191526020604051604460043501358152a380f35b61121f90611ab6565b6102ab5780386111ae565b505050fd5b61123890611ab6565b38611152565b90506110c6565b61125e915060203d60201161049a5761048c8183611adf565b38610f64565b013590503880610ee0565b6001855284935060008051602061226a833981519152915b601f19841685106112ca576001945083601f198116106112b0575b505050811b01600155610ef6565b0135600019600384901b60f8161c191690553880806112a2565b81810135835560209485019460019093019201611287565b6001855290915060008051602061226a833981519152601f840160051c810160208510611334575b90849392915b601f830160051c82018110611326575050610ecb565b868155859450600101611310565b508061130a565b013590503880610e7d565b84805260208520859450915b601f1984168510611394576001945083601f1981161061137a575b505050811b018155610e92565b0135600019600384901b60f8161c1916905538808061136d565b81810135835560209485019460019093019201611352565b90915083805260208420601f840160051c8101602085106113f2575b90849392915b601f830160051c820181106113e4575050610e68565b8681558594506001016113ce565b50806113c8565b60405162461bcd60e51b815260206004820152600c60248201526b0a882b0bea89e9ebe90928e960a31b6044820152606490fd5b60405162461bcd60e51b81526020600482015260126024820152712d22a927afaa20ac2fa82927a1a2a9a9a7a960711b6044820152606490fd5b60405162461bcd60e51b815260206004820152600c60248201526b2d22a927afaa2920a1a5a2a960a11b6044820152606490fd5b60405162461bcd60e51b81526020600482015260096024820152685a45524f5f53414c4560b81b6044820152606490fd5b60405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f464143544f525960a01b6044820152606490fd5b611519915060203d60201161049a5761048c8183611adf565b38610d69565b60405162461bcd60e51b815260206004820152600b60248201526a125392551250531256915160aa1b6044820152606490fd5b50346102ab57806003193601126102ab57602060ff600c5460a01c166040519015158152f35b50346102ab57806003193601126102ab57506010805460209161ffff91828116911c8216808211156115b05750905b60405191168152f35b9050906115a7565b50346102ab57806003193601126102ab57602061ffff60105460301c16604051908152f35b50346102ab5760203660031901126102ab576020906040906001600160a01b03611605611b42565b168152600383522054604051908152f35b50346102ab57806003193601126102ab576009546040516001600160a01b039091168152602090f35b50346102ab57806003193601126102ab5760c09060ff600c5460a01c166000146116a2576003905b601054600d549061167b6040518095611b73565b61ffff90818116602086015260101c166040840152606083015280608083015260a0820152f35b80611667565b50346102ab57806003193601126102ab576008546040516001600160a01b039091168152602090f35b50346102ab57806003193601126102ab57600b546040516001600160a01b039091168152602090f35b50346102ab57806003193601126102ab57602060405161ffff7f00000000000000000000000000000000000000000000000000000000000005dc168152f35b50346102ab57806003193601126102ab57602061ffff60105460401c16604051908152f35b50346102ab57806003193601126102ab576020600f54604051908152f35b50346102ab57806003193601126102ab576020600d54604051908152f35b50346102ab57806003193601126102ab576007546040516001600160a01b039091168152602090f35b50346102ab5760403660031901126102ab576117dd611b42565b33825260046020526040822060018060a01b0382168352602052604082205490602435820180921161181457610803925033611d70565b634e487b7160e01b83526011600452602483fd5b50346102ab57806003193601126102ab57602061ffff60105460501c16604051908152f35b50346102ab57806003193601126102ab57602060405160128152f35b50346102ab57806003193601126102ab57602060ff600c5460a81c166040519015158152f35b50346102ab5760603660031901126102ab576118a9611b42565b906118b2611b5d565b60406044359260018060a01b0385168152600460205281812033825260205220549260001984036118e8575b6108039350611dd4565b82841061190b576119066118ff8461080396611c36565b3383611d70565b6118de565b60405162461bcd60e51b8152602060048201526016602482015275494e53554646494349454e545f414c4c4f57414e434560501b6044820152606490fd5b50346102ab57806003193601126102ab576020611964611c43565b6040519015158152f35b50346102ab57806003193601126102ab576020600254604051908152f35b50346102ab5760403660031901126102ab576108036119a9611b42565b6024359033611d70565b50346102ab57806003193601126102ab576040518180546119d381611a7c565b80845290600190818116908115611a3857506001146119fd575b610c6e84610c5a81880382611adf565b93508180526020938483205b828410611a255750505081610c6e93610c5a92820101936119ed565b8054858501870152928501928101611a09565b610c6e9650610c5a9450602092508593915060ff191682840152151560051b820101936119ed565b9050346104b057816003193601126104b057602090600e548152f35b90600182811c92168015611aac575b6020831014611a9657565b634e487b7160e01b600052602260045260246000fd5b91607f1691611a8b565b6001600160401b038111611ac957604052565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b03821190821017611ac957604052565b919082519283825260005b848110611b2e575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611b0d565b600435906001600160a01b0382168203611b5857565b600080fd5b602435906001600160a01b0382168203611b5857565b906005821015611b805752565b634e487b7160e01b600052602160045260246000fd5b90816020910312611b5857516001600160a01b0381168103611b585790565b356001600160a01b0381168103611b585790565b3561ffff81168103611b585790565b91909161ffff80809416911601918211611bee57565b634e487b7160e01b600052601160045260246000fd5b903590601e1981360301821215611b5857018035906001600160401b038211611b5857602001918136038313611b5857565b91908203918211611bee57565b60ff600c5460b01c16611cd2576005546001600160a01b03168015611ccc57602060049160405192838092622fa8bd60e61b82525afa8091600091611c92575b5090611c8f5750600090565b90565b6020813d8211611cc4575b81611caa60209383611adf565b810103126104b057519081151582036102ab575038611c83565b3d9150611c9d565b50600090565b600190565b15611cde57565b60405162461bcd60e51b81526020600482015260096024820152682d22a927afa0a2222960b91b6044820152606490fd5b6001600160a01b039081169060008051602061228a8339815191529060209083151580611d65575b611d4090611cd7565b60009084825260048352604082209516948582528252806040812055604051908152a3565b508481161515611d37565b90916001600160a01b039182169160008051602061228a8339815191529160209184151580611dc9575b611da390611cd7565b8460005260048352604060002095169485600052825280604060002055604051908152a3565b508581161515611d9a565b916001600160a01b03808416919082151580611f0b575b611df490611cd7565b8260005260036020528160406000205410611ecf5761ffff611e168587611ff1565b169081611e4f575050611e2b9150828461210d565b60ff600c5460a01c16611e3c575050565b611e48611e4d92612162565b612162565b565b909182810292818404811482151715611bee57611e8494612710611e7d95049384611e89575b505050611c36565b828461210d565b611e2b565b60407f926083e8bf831ee53968e0f9175b9f567ad684f01c6a8bc173937b74e10ec94891611eb887308d61210d565b8151948786526020860152891693a3388080611e75565b60405162461bcd60e51b8152602060048201526014602482015273494e53554646494349454e545f42414c414e434560601b6044820152606490fd5b508381161515611deb565b600090810b908115611fed57600d548091808413600014611fbb57606582029180830460651490151715611fa757506064900490600e54808311611f9f575b505b808203611f6357505050565b7f5fefc29e9ea09fee32f22e1b9654c391699abaa85a75e6b953182268eef06b509282606093600d5560405192835260208301526040820152a1565b915038611f55565b634e487b7160e01b81526011600452602490fd5b606382029180830460631490151715611fa757506064900490600f54808310611fe5575b50611f57565b915038611fdf565b5050565b90600c549060ff8260a01c16158015612085575b8015612074575b61205d5761201983612096565b8015612065575b61205d576001600160a01b03918216928216831461205057161461204357600090565b61ffff60105460101c1690565b50505061ffff6010541690565b505050600090565b5061206f81612096565b612020565b5061ffff60105460201c161561200c565b506001600160a01b03821615612005565b6001600160a01b039081163081149182156120ff575b82156120f1575b82156120e3575b82156120d5575b5081156120cc575090565b61dead91501490565b600b541681149150386120c1565b6006548116821492506120ba565b6009548116821492506120b3565b600a548116821492506120ac565b602060008051602061224a8339815191529160018060a01b038091169384600052600383526040600020612142878254611c36565b9055169384600052600382526040600020818154019055604051908152a3565b6001600160a01b0381811691600091908315908115612219575b50801561220c575b61220757600b541682825260036020526040822054813b156104ac5782916044839260405195869384926338c110ef60e21b845289600485015260248401525af191826121f8575b5090611fed57807f7fef15a7609a512fb143b653df02565f7724a98b7a2c5067ed2b910ac66b60f391a2565b61220190611ab6565b386121cc565b505050565b5080600c54168314612184565b6122239150612096565b3861217c56feb1dd7e27906fac6b163865573ed5e343c85bd7b4fc8ff401a60010cf3e9244aaddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf68c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a164736f6c6343000814000a
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| 530A (530B) | 530B | 42,834,987.488706 | $0.00000103 | $44.24 |
| DIH | 1 | $0.0000102 | $0 | |
| LARUTAN PENYEGAR (LARUTAN) | LARUTAN | 5,000,000 | — | — |
| ROBINSCAN (ROBINSCAN) | ROBINSCAN | 2,000,000 | — | — |
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Block | Age | Parent Transaction Hash | Type | Method | From | To | Value | |
|---|---|---|---|---|---|---|---|---|
| no internal transactions found for this address yet (traced blocks + on-demand) | ||||||||
| Transaction Hash | Method | Block | Age | From | To | Type | Item | ||
|---|---|---|---|---|---|---|---|---|---|
| no NFT transfers for this address yet | |||||||||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0x0896b5…559f22 | 31 days agoThu, 16 Jul 2026 02:42:43 UTC | Transfer | [0] 0x000000000000…45000000 [1] 0x000000000000…1fc92301 data: 0x000000000000000000…b49d968d |
| 0x0896b5…559f22 | 31 days agoThu, 16 Jul 2026 02:42:43 UTC | 0x926083…c948 | [0] 0x000000000000…45000000 [1] 0x000000000000…1fc92301 data: 0x000000000000000000…0000012c |
| 0x0896b5…559f22 | 31 days agoThu, 16 Jul 2026 02:42:43 UTC | Transfer | [0] 0x000000000000…45000000 [1] 0x000000000000…769abb98 data: 0x000000000000000000…521f43ff |
| 0x0896b5…559f22 | 31 days agoThu, 16 Jul 2026 02:42:43 UTC | Transfer | [0] 0x000000000000…7cd4078b [1] 0x000000000000…45000000 data: 0x000000000000000000…aeaf8e6e |
| 0xc994a4…51a732 | 31 days agoThu, 16 Jul 2026 02:42:36 UTC | Approval | [0] 0x000000000000…7cd4078b [1] 0x000000000000…45000000 data: 0xffffffffffffffffff…ffffffff |
| 0xb5a4de…293598 | 32 days agoWed, 15 Jul 2026 10:44:51 UTC | Transfer | [0] 0x000000000000…45000000 [1] 0x000000000000…1fc92301 data: 0x000000000000000000…45887ed7 |
| 0xb5a4de…293598 | 32 days agoWed, 15 Jul 2026 10:44:51 UTC | 0x926083…c948 | [0] 0x000000000000…45000000 [1] 0x000000000000…1fc92301 data: 0x000000000000000000…0000012c |
| 0xb5a4de…293598 | 32 days agoWed, 15 Jul 2026 10:44:51 UTC | Transfer | [0] 0x000000000000…45000000 [1] 0x000000000000…769abb98 data: 0x000000000000000000…e27afc01 |
| 0xb5a4de…293598 | 32 days agoWed, 15 Jul 2026 10:44:51 UTC | Transfer | [0] 0x000000000000…3e68dbbb [1] 0x000000000000…45000000 data: 0x000000000000000000…ed13aab7 |
| 0x129482…00ffd2 | 32 days agoWed, 15 Jul 2026 10:44:44 UTC | Approval | [0] 0x000000000000…3e68dbbb [1] 0x000000000000…45000000 data: 0xffffffffffffffffff…ffffffff |
| 0x899e1d…de79dd | 33 days agoTue, 14 Jul 2026 03:06:41 UTC | Transfer | [0] 0x000000000000…22b41594 [1] 0x000000000000…1fc92301 data: 0x000000000000000000…f1f9e1d9 |
| 0x899e1d…de79dd | 33 days agoTue, 14 Jul 2026 03:06:41 UTC | 0x926083…c948 | [0] 0x000000000000…22b41594 [1] 0x000000000000…1fc92301 data: 0x000000000000000000…0000012c |
| 0x899e1d…de79dd | 33 days agoTue, 14 Jul 2026 03:06:41 UTC | Transfer | [0] 0x000000000000…22b41594 [1] 0x000000000000…769abb98 data: 0x000000000000000000…272765fe |
| 0x899e1d…de79dd | 33 days agoTue, 14 Jul 2026 03:06:41 UTC | Approval | [0] 0x000000000000…22b41594 [1] 0x000000000000…b7e16d97 data: 0x000000000000000000…10df5801 |
| 0x9ccbb1…748be6 | 33 days agoTue, 14 Jul 2026 03:06:40 UTC | Approval | [0] 0x000000000000…22b41594 [1] 0x000000000000…b7e16d97 data: 0x000000000000000000…2a009fd8 |
| 0xc1046e…2603f8 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | Transfer | [0] 0x000000000000…8f75f50f [1] 0x000000000000…1fc92301 data: 0x000000000000000000…1f804ca3 |
| 0xc1046e…2603f8 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | 0x926083…c948 | [0] 0x000000000000…8f75f50f [1] 0x000000000000…1fc92301 data: 0x000000000000000000…0000012c |
| 0xc1046e…2603f8 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | Transfer | [0] 0x000000000000…8f75f50f [1] 0x000000000000…769abb98 data: 0x000000000000000000…751914d8 |
| 0xc1046e…2603f8 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | Approval | [0] 0x000000000000…8f75f50f [1] 0x000000000000…b7e16d97 data: 0x000000000000000000…0e82841e |
| 0x653e90…0c23a5 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | Approval | [0] 0x000000000000…8f75f50f [1] 0x000000000000…b7e16d97 data: 0x000000000000000000…a31be599 |
| 0x13fe4a…75151c | 34 days agoMon, 13 Jul 2026 13:40:08 UTC | Transfer | [0] 0x000000000000…1fc92301 [1] 0x000000000000…22b41594 data: 0x000000000000000000…192147d7 |
| 0x13fe4a…75151c | 34 days agoMon, 13 Jul 2026 13:40:08 UTC | 0x926083…c948 | [0] 0x000000000000…1fc92301 [1] 0x000000000000…22b41594 data: 0x000000000000000000…0000012c |
| 0x13fe4a…75151c | 34 days agoMon, 13 Jul 2026 13:40:08 UTC | Transfer | [0] 0x000000000000…1fc92301 [1] 0x000000000000…769abb98 data: 0x000000000000000000…9735d013 |
| 0xddf7c8…ffc5ae | 34 days agoMon, 13 Jul 2026 12:06:10 UTC | Approval | [0] 0x000000000000…8f75f50f [1] 0x000000000000…b7e16d97 data: 0x000000000000000000…a31be599 |
| 0x279248…a5e1eb | 34 days agoMon, 13 Jul 2026 12:06:09 UTC | Transfer | [0] 0x000000000000…1fc92301 [1] 0x000000000000…8f75f50f data: 0x000000000000000000…9499617b |
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0xc994a4…51a732 | Approve | 10,906,172 | 31 days agoThu, 16 Jul 2026 02:42:36 UTC | 0x10c3…078b | IN | 530A | $0.000 ETH | 0.00000310 | |
| 0x129482…00ffd2 | Approve | 10,330,663 | 32 days agoWed, 15 Jul 2026 10:44:44 UTC | 0xc611…dbbb | IN | 530A | $0.000 ETH | 0.00000259 | |
| 0x9ccbb1…748be6 | Approve | 9,193,096 | 33 days agoTue, 14 Jul 2026 03:06:40 UTC | 0x7047…1594 | IN | 530A | $0.000 ETH | 0.00000224 | |
| 0x653e90…0c23a5 | Approve | 9,027,331 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | 0xdfad…f50f | IN | 530A | $0.000 ETH | 0.00000135 | |
| 0xddf7c8…ffc5ae | Approve | 8,653,992 | 34 days agoMon, 13 Jul 2026 12:06:10 UTC | 0xdfad…f50f | IN | 530A | $0.000 ETH | 0.00000223 | |
| 0x7030b6…ed158d | Approve | 7,144,029 | 36 days agoSat, 11 Jul 2026 18:04:10 UTC | 0x0c7d…833a | IN | 530A | $0.000 ETH | 0.00000284 |
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| 0x853ae1e9…338ac7 | Transfer | 34,356,822 | 4 days agoWed, 12 Aug 2026 07:43:43 UTC | 0xb6e2…6d2c | IN | 0xf27c…bb98 | 5,000,000.000000 LARUTAN | LARUTAN PENYEGAR (LARUTAN) | |
| 0x8679f48f…4db371 | Transfer | 33,640,794 | 5 days agoTue, 11 Aug 2026 11:53:35 UTC | 0x62cf…b74b | IN | 0xf27c…bb98 | 1,999,999.999999 ROBINSCAN | ROBINSCAN (ROBINSCAN) | |
| 0xc82b7f71…d9eb34 | Transfer | 18,611,015 | 22 days agoSat, 25 Jul 2026 01:20:29 UTC | 0xcaf7…5d11 | IN | 0xf27c…bb98 | $0.001 DIH | ||
| 0x0896b52d…559f22 | Transfer | 10,906,241 | 31 days agoThu, 16 Jul 2026 02:42:43 UTC | 0x0796…0000 | IN | 0xf27c…bb98 | $NaN848,166.192372 530B | 530A (530B) | |
| 0xb5a4de03…293598 | Transfer | 10,330,732 | 32 days agoWed, 15 Jul 2026 10:44:51 UTC | 0x0796…0000 | IN | 0xf27c…bb98 | $NaN841,249.775716 530B | 530A (530B) | |
| 0x899e1d37…de79dd | Transfer | 9,193,099 | 33 days agoTue, 14 Jul 2026 03:06:41 UTC | 0x7047…1594 | IN | 0xf27c…bb98 | $NaN252,653.749838 530B | 530A (530B) | |
| 0xc1046e6d…2603f8 | Transfer | 9,027,331 | 34 days agoMon, 13 Jul 2026 22:29:32 UTC | 0xdfad…f50f | IN | 0xf27c…bb98 | $NaN92,912.125975 530B | 530A (530B) | |
| 0x13fe4ae1…75151c | Transfer | 8,710,301 | 34 days agoMon, 13 Jul 2026 13:40:08 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN260,467.783338 530B | 530A (530B) | |
| 0x279248de…a5e1eb | Transfer | 8,653,982 | 34 days agoMon, 13 Jul 2026 12:06:09 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN95,785.696881 530B | 530A (530B) | |
| 0x3534211f…a00231 | Transfer | 8,648,769 | 34 days agoMon, 13 Jul 2026 11:57:26 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN3,432.325472 530B | 530A (530B) | |
| 0x7f1d92ce…e857f6 | Transfer | 8,628,353 | 34 days agoMon, 13 Jul 2026 11:23:19 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN490,466.302021 530B | 530A (530B) | |
| 0x158483bb…8b2826 | Transfer | 8,627,597 | 34 days agoMon, 13 Jul 2026 11:22:04 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN508,580.320207 530B | 530A (530B) | |
| 0x86ca38fe…697688 | Transfer | 8,613,048 | 34 days agoMon, 13 Jul 2026 10:57:45 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN368,448.903931 530B | 530A (530B) | |
| 0xbc37d2c4…456798 | Transfer | 8,602,067 | 34 days agoMon, 13 Jul 2026 10:39:30 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN379,411.140322 530B | 530A (530B) | |
| 0xd6100712…54fd49 | Transfer | 7,146,343 | 36 days agoSat, 11 Jul 2026 18:08:01 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $0.0054.924285 530B | 530A (530B) | |
| 0x9fcbf906…b0ffc3 | Transfer | 7,145,648 | 36 days agoSat, 11 Jul 2026 18:06:51 UTC | 0xf27c…bb98 | OUT | 0xffa3…fc04 | $NaN499,999.999999 530B | 530A (530B) | |
| 0x9fcbf906…b0ffc3 | Transfer | 7,145,648 | 36 days agoSat, 11 Jul 2026 18:06:51 UTC | 0x94f8…cae8 | IN | 0xf27c…bb98 | $NaN13,579,329.215747 530B | 530A (530B) | |
| 0x5bac8a9c…2d4b9b | Transfer | 7,144,125 | 36 days agoSat, 11 Jul 2026 18:04:20 UTC | 0xf27c…bb98 | OUT | 0xffa3…fc04 | $NaN499,999.999999 530B | 530A (530B) | |
| 0x5bac8a9c…2d4b9b | Transfer | 7,144,125 | 36 days agoSat, 11 Jul 2026 18:04:20 UTC | 0x94f8…cae8 | IN | 0xf27c…bb98 | $NaN13,579,329.215747 530B | 530A (530B) | |
| 0xb43ef7ad…786a0f | Transfer | 7,135,364 | 36 days agoSat, 11 Jul 2026 17:49:43 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $0.000.402935 530B | 530A (530B) | |
| 0x1a2567e4…4c8748 | Transfer | 7,134,437 | 36 days agoSat, 11 Jul 2026 17:48:10 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN40,965.078072 530B | 530A (530B) | |
| 0xb6eb17ca…b637e1 | Transfer | 7,133,462 | 36 days agoSat, 11 Jul 2026 17:46:32 UTC | 0x71ea…2301 | IN | 0xf27c…bb98 | $NaN12,493,734.335839 530B | 530A (530B) |