Transaction Hash:
Block:
13119276 at Aug-29-2021 08:20:59 AM +UTC
Transaction Fee:
0.003119811 ETH
$7.86
Gas Used:
32,163 Gas / 97 Gwei
Emitted Events:
25 |
ATL.Transfer( from=[Sender] 0xf60a0c853be39695754f10fda2e148cb4840566a, to=0xED79F9AD77Dbf87961656eb1bbCF984461315B35, value=48596000000000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x78B7FADA...b67fA8a05 | |||||
0x829BD824...93333A830
Miner
| (F2Pool Old) | 5,075.520606305755119343 Eth | 5,075.522116246483035889 Eth | 0.001509940727916546 | |
0xf60a0c85...B4840566A |
0.003585411 Eth
Nonce: 0
|
0.0004656 Eth
Nonce: 1
| 0.003119811 |
Execution Trace
ATL.transfer( _to=0xED79F9AD77Dbf87961656eb1bbCF984461315B35, _value=48596000000000000000000 )
transfer[ATL (ln:149)]
transfer[ATL (ln:151)]
pragma solidity ^0.4.11; library SafeMath { function mul(uint a, uint b) internal returns (uint) { uint c = a * b; assert(a == 0 || c / a == b); return c; } function div(uint a, uint b) internal returns (uint) { assert(b > 0); uint c = a / b; assert(a == b * c + a % b); return c; } function sub(uint a, uint b) internal returns (uint) { assert(b <= a); return a - b; } function add(uint a, uint b) internal returns (uint) { uint c = a + b; assert(c >= a); return c; } function max64(uint64 a, uint64 b) internal constant returns (uint64) { return a >= b ? a : b; } function min64(uint64 a, uint64 b) internal constant returns (uint64) { return a < b ? a : b; } function max256(uint256 a, uint256 b) internal constant returns (uint256) { return a >= b ? a : b; } function min256(uint256 a, uint256 b) internal constant returns (uint256) { return a < b ? a : b; } function assert(bool assertion) internal { if (!assertion) { throw; } } } contract ERC20Basic { uint public totalSupply; function balanceOf(address who) constant returns (uint); function transfer(address to, uint value); event Transfer(address indexed from, address indexed to, uint value); } contract ERC20 is ERC20Basic { function allowance(address owner, address spender) constant returns (uint); function transferFrom(address from, address to, uint value); function approve(address spender, uint value); event Approval(address indexed owner, address indexed spender, uint value); } contract BasicToken is ERC20Basic { using SafeMath for uint; mapping(address => uint) balances; /* * Fix for the ERC20 short address attack */ modifier onlyPayloadSize(uint size) { if(msg.data.length < size + 4) { throw; } _; } function transfer(address _to, uint _value) onlyPayloadSize(2 * 32) { balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); Transfer(msg.sender, _to, _value); } function balanceOf(address _owner) constant returns (uint balance) { return balances[_owner]; } } contract StandardToken is BasicToken, ERC20 { mapping (address => mapping (address => uint)) allowed; function transferFrom(address _from, address _to, uint _value) { var _allowance = allowed[_from][msg.sender]; // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met // if (_value > _allowance) throw; balances[_to] = balances[_to].add(_value); balances[_from] = balances[_from].sub(_value); allowed[_from][msg.sender] = _allowance.sub(_value); Transfer(_from, _to, _value); } function approve(address _spender, uint _value) { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); } function allowance(address _owner, address _spender) constant returns (uint remaining) { return allowed[_owner][_spender]; } } contract ATL is StandardToken { string public name = "ATLANT Token"; string public symbol = "ATL"; uint public decimals = 18; uint constant TOKEN_LIMIT = 150 * 1e6 * 1e18; address public ico; bool public tokensAreFrozen = true; function ATL(address _ico) { ico = _ico; } function mint(address _holder, uint _value) external { require(msg.sender == ico); require(_value != 0); require(totalSupply + _value <= TOKEN_LIMIT); balances[_holder] += _value; totalSupply += _value; Transfer(0x0, _holder, _value); } function unfreeze() external { require(msg.sender == ico); tokensAreFrozen = false; } function transfer(address _to, uint _value) public { require(!tokensAreFrozen); super.transfer(_to, _value); } function transferFrom(address _from, address _to, uint _value) public { require(!tokensAreFrozen); super.transferFrom(_from, _to, _value); } function approve(address _spender, uint _value) public { require(!tokensAreFrozen); super.approve(_spender, _value); } }