Transaction Hash:
Block:
8187795 at Jul-20-2019 01:15:45 PM +UTC
Transaction Fee:
0.00298247 ETH
$5.86
Gas Used:
2,982,470 Gas / 1 Gwei
Emitted Events:
Account State Difference:
| Address | Before | After | State Difference | ||
|---|---|---|---|---|---|
| 0x3616FD03...7Cc7BB93d | |||||
| 0x9c79dc0E...b45aCbe3F | 0.524771807984254995 Eth | 0.525772007984254995 Eth | 0.0010002 | ||
|
0xb2930B35...e543a0347
Miner
| (MiningPoolHub: Old Address) | 6,242.072751110951310621 Eth | 6,242.075733580951310621 Eth | 0.00298247 | |
| 0xe9428d4A...52733Fcd9 | |||||
| 0xF202223e...6052a16eA |
0.322970340724578266 Eth
Nonce: 362
|
0.318987670724578266 Eth
Nonce: 363
| 0.00398267 |
Execution Trace
ETH 0.0010002
0xe9428d4a341ac20e9f2e6b95b12c9ad52733fcd9.CALL( )
- ETH 0.0010002
0x9c79dc0edd49caa9da6b704339dacedb45acbe3f.CALL( ) 0xc2fc6e1f7f0a75120524491122e1e5630753336d.60806040( )0xc32143b7310dadfa4ac5853b8229483d194fc58e.60806040( )0x1cba6926e34b9f5c91fcfcd4f602735796ee3a78.60806040( )0xc195305dbea498983bfaea3f1ff2579f8f349acc.60806040( )0x9c3e830a019152605be5c3e0a11fa320dd1fb2a5.60806040( )0x581a5c331b230283e63df411524a74ef3b710bdd.60806040( )0xe0848de18191fc8ad632aae4bae165d8512928dd.60806040( )0x63586109ab3012f97363c53ff429bd41a75b71b9.60806040( )0xd7f925075540618dd71abcb1ef532e5930f2a84c.60806040( )0x540a06fded15616109215c0c8b31a55f1e624d73.60806040( )0x382e33bee4fd14effcd563855531bf21f78f3149.60806040( )0xcb6a4547b92d3d2a668991d604f9aceec9116adf.60806040( )0x472821d8780b0784b3e74c8fbb5f2b2d3389c7b6.60806040( )0xd2eba2802f5aa7d275b955bc0fd28b69f87f18cd.60806040( )0x178d36d5fd74b87b90aedb19462e6b539626d64a.60806040( )0xcffd352ab0f54039b73a046784b10fec756a39ed.60806040( )0xaf1eb0d1f9a9e1c28476529a6e826ef6e44b6b81.60806040( )0xec85534a8614eb0bb4f187dbd1d3d62c21bf2fd2.60806040( )0xba0f5963a405ec5cdf3c6a71e34bb9cb964ffea5.60806040( )0x48d12527794d9dd84f5ebabd4f53d0b4443f46ff.60806040( )0x595d8edfbdedf3f461aa33309b03c9fdd54861ff.60806040( )0x01083924e1e29c2ed064bb874abda50cb69966e7.60806040( )0xe0820d79dc9f1d7cc62cb66dd15d1978e5716935.60806040( )0x639a248cb6616c00d143152552f991eb0727f6bd.60806040( )0x3f9d820ee51c65c7af25c473fcfbebaedd79e204.60806040( )0x4e0bcef805d8f05767a80f76570c1dcbf9b19006.60806040( )0x99bdad4f25142eb0b31b321e75b6114296ba327c.60806040( )0x629569055a96eb81b7e47449adec04efbe8d2889.60806040( )0xd4891238e0952b0502c0b652014c11b36c8be824.60806040( )0xe6b17250778373793f6de1baa6dfd4d821cc7905.60806040( )0xeff4d0a68a55aabed9d5457dd2eedcbb129caaff.60806040( )0xb337a24563da86439735d22d97e9b3d204f0da8f.60806040( )0x857bedb2c6acb03d410f18559ac6aae0614fcb68.60806040( )0x08160219ad2c5bfdfa703a5efff54ede49217947.60806040( )0xc8183f67687172e45b57789a1df19b5de2c3cb63.60806040( )0x5c603244a515f7ef2b2aa5a3520c91707ca5ba72.60806040( )0xe111f0ea0bd1d948dbce334b2f00a229604cd00a.60806040( )0xa86c4758f51d5417f938d85485df05ad23642efa.60806040( )0xc2458c2f6c17949f38f880cbdfca2c820069b17a.60806040( )0x4f78f8255ebba976199a87ee0ffeb9d144f6bd9b.60806040( )0x05ba7052ad2d307baad4752bbced4a666a8f2c84.60806040( )0x2ccd26f3a433e9d42d2a5577fcba2cf0f02afce7.60806040( )0xe47d9f09b67828c442faaca4b8ffba8b93a9afbd.60806040( )0x4ef5e982f5b9f420ed52030680b717b4ef5cb0ff.60806040( )
pragma solidity >=0.4.22 <0.6.0;
/**
* @title SafeMath
* @dev Unsigned math operations with safety checks that revert on error
*/
library SafeMath {
/**
* @dev Multiplies two unsigned integers, reverts on overflow.
*/
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
// Gas optimization: this is cheaper than requiring 'a' not being zero, but the
// benefit is lost if 'b' is also tested.
// See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b);
return c;
}
/**
* @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
// Solidity only automatically asserts when dividing by 0
require(b > 0);
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
/**
* @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
*/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
require(b <= a);
uint256 c = a - b;
return c;
}
/**
* @dev Adds two unsigned integers, reverts on overflow.
*/
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a);
return c;
}
/**
* @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo),
* reverts when dividing by zero.
*/
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
require(b != 0);
return a % b;
}
}
contract DappToken {
string public name = "Block Chain Little Sister";
string public symbol = "BCLS";
uint256 public totalSupply = 100000000000 * (10 ** 18);
uint256 public decimals = 18;
address public owner = 0xb2b9b6D9b0ae23C797faEa8694c8639e7BA785EB;
address payable public beneficiary = 0xE2d19B66c02D64E8adF4D1cA8ff45679e30e4f71;
uint256 public rate = 1000000;
uint256 public zero = 2000 * (10 ** 18);
using SafeMath for uint256;
event Transfer(
address indexed _from,
address indexed _to,
uint256 _value
);
event Approval(
address indexed _owner,
address indexed _spender,
uint256 _value
);
mapping(address => uint256) public balanceOf;
mapping(address => mapping(address => uint256)) public allowance;
mapping(address => bool) public registered;
constructor() public {
balanceOf[owner] = totalSupply;
emit Transfer(address(0), owner, totalSupply);
}
function transfer(address _to, uint256 _value) public returns (bool success) {
balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value);
balanceOf[_to] = balanceOf[_to].add(_value);
emit Transfer(msg.sender, _to, _value);
return true;
}
function approve(address _spender, uint256 _value) public returns (bool success) {
allowance[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
return true;
}
function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
require(_value <= balanceOf[_from]);
require(_value <= allowance[_from][msg.sender]);
balanceOf[_from] = balanceOf[_from].sub(_value);
balanceOf[_to] = balanceOf[_to].add(_value);
allowance[_from][msg.sender] = allowance[_from][msg.sender].sub(_value);
emit Transfer(_from, _to, _value);
return true;
}
function() payable external {
uint256 out = 0;
if(!registered[msg.sender]) {
out = out.add(zero);
registered[msg.sender] = true;
}
if (msg.value > 0) {
out = out.add(msg.value.mul(rate));
}
balanceOf[owner] = balanceOf[owner].sub(out);
balanceOf[msg.sender] = balanceOf[msg.sender].add(out);
emit Transfer(owner, msg.sender, out);
if (msg.value > 0) {
beneficiary.transfer(msg.value);
}
}
}