Transaction Hash:
Block:
9238161 at Jan-08-2020 05:36:43 AM +UTC
Transaction Fee:
0.000257145 ETH
$0.65
Gas Used:
36,735 Gas / 7 Gwei
Emitted Events:
43 |
ERC20Standard.Transfer( _from=[Sender] 0xa4e33b885dd9dd744a864a789619fd4f4ff3973e, _to=0xa2D9cC534BEf948bd1732EA71C3cF09006285f87, _value=150000000000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x52bc44d5...b7d7bE3b5
Miner
| (Nanopool) | 4,363.608765310123619767 Eth | 4,363.609022455123619767 Eth | 0.000257145 | |
0xA4e33b88...F4FF3973e |
0.001146279839163554 Eth
Nonce: 134
|
0.000889134839163554 Eth
Nonce: 135
| 0.000257145 | ||
0xa9c212a5...F6fC807D5 |
Execution Trace
ERC20Standard.transfer( _recipient=0xa2D9cC534BEf948bd1732EA71C3cF09006285f87, _value=150000000000000000000 )
transfer[ERC20Standard (ln:59)]
Transfer[ERC20Standard (ln:63)]
pragma solidity ^0.4.11; //------------------------------------------------------------------------------------------------ // ERC20 Standard Token Implementation, based on ERC Standard: // https://github.com/ethereum/EIPs/issues/20 // With some inspiration from ConsenSys HumanStandardToken as well // Copyright 2017 BattleDrome //------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------ // LICENSE // // This file is part of BattleDrome. // // BattleDrome is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // BattleDrome is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with BattleDrome. If not, see <http://www.gnu.org/licenses/>. //------------------------------------------------------------------------------------------------ contract ERC20Standard { uint256 public totalSupply; bool public mintable; string public name; uint256 public decimals; string public symbol; address public owner; mapping (address => uint256) balances; mapping (address => mapping (address => uint256)) allowed; function ERC20Standard(uint256 _totalSupply, string _symbol, string _name, bool _mintable) public { decimals = 18; symbol = _symbol; name = _name; mintable = _mintable; owner = msg.sender; totalSupply = _totalSupply * (10 ** decimals); balances[msg.sender] = totalSupply; } //Fix for short address attack against ERC20 modifier onlyPayloadSize(uint size) { assert(msg.data.length == size + 4); _; } function balanceOf(address _owner) constant public returns (uint256) { return balances[_owner]; } function transfer(address _recipient, uint256 _value) onlyPayloadSize(2*32) public { require(balances[msg.sender] >= _value && _value > 0); balances[msg.sender] -= _value; balances[_recipient] += _value; Transfer(msg.sender, _recipient, _value); } function transferFrom(address _from, address _to, uint256 _value) public { require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0); balances[_to] += _value; balances[_from] -= _value; allowed[_from][msg.sender] -= _value; Transfer(_from, _to, _value); } function approve(address _spender, uint256 _value) public { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); } function allowance(address _owner, address _spender) constant public returns (uint256) { return allowed[_owner][_spender]; } function mint(uint256 amount) public { assert(amount >= 0); require(msg.sender == owner); balances[msg.sender] += amount; totalSupply += amount; } //Event which is triggered to log all transfers to this contract's event log event Transfer( address indexed _from, address indexed _to, uint256 _value ); //Event which is triggered whenever an owner approves a new allowance for a spender. event Approval( address indexed _owner, address indexed _spender, uint256 _value ); }