Transaction Hash:
Block:
9976939 at Apr-30-2020 11:54:27 PM +UTC
Transaction Fee:
0.000350973 ETH
$0.84
Gas Used:
38,997 Gas / 9 Gwei
Emitted Events:
26 |
XanPool.Transfer( _from=[Sender] 0x75e89d5979e4f6fba9f97c104c2f0afb3f1dcb88, _to=0xc12f0f9e2d81D3849662c8360827A7818D1ee875, value=244000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x75e89d59...B3F1dcB88 | (MEXC 1) |
903.588784617603766323 Eth
Nonce: 480416
|
903.588433644603766323 Eth
Nonce: 480417
| 0.000350973 | |
0x8DC6eD01...3C7360D7F | |||||
0xD224cA0c...503B79f53
Miner
| (UUPool) | 58.415377109736333154 Eth | 58.415728082736333154 Eth | 0.000350973 |
Execution Trace
XanPool.transfer( _to=0xc12f0f9e2d81D3849662c8360827A7818D1ee875, _value=244000000000 ) => ( True )
transfer[XanPool (ln:55)]
burn[XanPool (ln:57)]
safeSub[XanPool (ln:72)]
safeSub[XanPool (ln:73)]
Burn[XanPool (ln:74)]
safeSub[XanPool (ln:62)]
safeAdd[XanPool (ln:63)]
Transfer[XanPool (ln:64)]
pragma solidity 0.4.26; contract SafeMath { function safeMul(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a * b; _assert(a == 0 || c / a == b); return c; } function safeDiv(uint256 a, uint256 b) internal pure returns (uint256) { _assert(b > 0); uint256 c = a / b; _assert(a == b * c + a % b); return c; } function safeSub(uint256 a, uint256 b) internal pure returns (uint256) { _assert(b <= a); return a - b; } function safeAdd(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; _assert(c >= a && c >= b); return c; } function _assert(bool assertion) internal pure { if (!assertion) { revert(); } } } contract XanPool is SafeMath { string public name = "XanPool"; string public symbol = "XLP"; uint8 constant public decimals = 8; mapping(address => uint256) _balances; mapping(address => mapping(address => uint256)) public _allowed; uint256 public totalSupply = 10 * 100000000 * 100000000; constructor () public{ _balances[msg.sender] = totalSupply; emit Transfer(0x0, msg.sender, totalSupply); } function balanceOf(address addr) public view returns (uint256) { return _balances[addr]; } function transfer(address _to, uint256 _value) public returns (bool) { if (_to == address(0)) { return burn(_value); } else { require(_balances[msg.sender] >= _value && _value >= 0); require(_balances[_to] + _value >= _balances[_to]); _balances[msg.sender] = safeSub(_balances[msg.sender], _value); _balances[_to] = safeAdd(_balances[_to], _value); emit Transfer(msg.sender, _to, _value); return true; } } function burn(uint256 _value) public returns (bool) { require(_balances[msg.sender] >= _value && _value > 0); require(totalSupply >= _value); _balances[msg.sender] = safeSub(_balances[msg.sender], _value); totalSupply = safeSub(totalSupply, _value); emit Burn(msg.sender, _value); return true; } function transferFrom(address _from, address _to, uint256 _value) public returns (bool) { require(_to != address(0)); require(_balances[_from] >= _value && _value >= 0); require(_balances[_to] + _value >= _balances[_to]); require(_allowed[_from][msg.sender] >= _value); _balances[_to] = safeAdd(_balances[_to], _value); _balances[_from] = safeSub(_balances[_from], _value); _allowed[_from][msg.sender] = safeSub(_allowed[_from][msg.sender], _value); emit Transfer(_from, _to, _value); return true; } function approve(address spender, uint256 value) public returns (bool) { require(spender != address(0)); require(value == 0 || _allowed[msg.sender][spender] == 0); _allowed[msg.sender][spender] = value; emit Approval(msg.sender, spender, value); return true; } function allowance(address _master, address _spender) public view returns (uint256) { return _allowed[_master][_spender]; } event Approval(address indexed _owner, address indexed _spender, uint256 _value); event Transfer(address indexed _from, address indexed _to, uint256 value); event Burn(address indexed _from, uint256 value); }