ETH Price: $2,012.38 (+3.43%)

Transaction Decoder

Block:
6961164 at Dec-27-2018 08:52:43 AM +UTC
Transaction Fee:
0.00010904 ETH $0.22
Gas Used:
21,808 Gas / 5 Gwei

Account State Difference:

  Address   Before After State Difference Code
(Spark Pool)
7,469.37980977545473451 Eth7,469.37991881545473451 Eth0.00010904
0x990a2f15...B4bf88090
0.00230241 Eth
Nonce: 1
0.00219337 Eth
Nonce: 2
0.00010904
0xF8C595D0...E49a87f3c

Execution Trace

DACCToken.transfer( to=0x689C56AEf474Df92D44A1B70850f808488F9769C, value=400525000000 ) => ( True )
pragma solidity ^0.4.23;


//import "./ERC20.sol";
//import "./ERC20Basic.sol";
library SafeMath {
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}


contract BasicToken  {
  using SafeMath for uint256;

  // public variables
  string public name;
  string public symbol;
  uint8 public decimals = 18;

  // internal variables
  uint256 _totalSupply;
  mapping(address => uint256) _balances;
  event Transfer(address indexed from, address indexed to, uint256 value);
  // events

  // public functions
  function totalSupply() public view returns (uint256) {
    return _totalSupply;
  }

  function balanceOf(address addr) public view returns (uint256 balance) {
    return _balances[addr];
  }

  function transfer(address to, uint256 value) public returns (bool) {
    require(to != address(0));
    require(value <= _balances[msg.sender]);

    _balances[msg.sender] = _balances[msg.sender].sub(value);
    _balances[to] = _balances[to].add(value);
    emit Transfer(msg.sender, to, value);
    return true;
  }

  // internal functions

}

contract StandardToken is BasicToken {
  // public variables

  // internal variables
  mapping (address => mapping (address => uint256)) _allowances;
  event Approval(address indexed owner, address indexed agent, uint256 value);

  // events

  // public functions
  function transferFrom(address from, address to, uint256 value) public returns (bool) {
    require(to != address(0));
    require(value <= _balances[from]);
    require(value <= _allowances[from][msg.sender]);

    _balances[from] = _balances[from].sub(value);
    _balances[to] = _balances[to].add(value);
    _allowances[from][msg.sender] = _allowances[from][msg.sender].sub(value);
    emit Transfer(from, to, value);
    return true;
  }

  function approve(address agent, uint256 value) public returns (bool) {
    _allowances[msg.sender][agent] = value;
    emit Approval(msg.sender, agent, value);
    return true;
  }

  function allowance(address owner, address agent) public view returns (uint256) {
    return _allowances[owner][agent];
  }

  function increaseApproval(address agent, uint value) public returns (bool) {
    _allowances[msg.sender][agent] = _allowances[msg.sender][agent].add(value);
    emit Approval(msg.sender, agent, _allowances[msg.sender][agent]);
    return true;
  }

  function decreaseApproval(address agent, uint value) public returns (bool) {
    uint allowanceValue = _allowances[msg.sender][agent];
    if (value > allowanceValue) {
      _allowances[msg.sender][agent] = 0;
    } else {
      _allowances[msg.sender][agent] = allowanceValue.sub(value);
    }
    emit Approval(msg.sender, agent, _allowances[msg.sender][agent]);
    return true;
  }
  // internal functions
}


contract DACCToken is StandardToken {
  // public variables
  string public name = "Decentralized Accessible Content Chain";
  string public symbol = "DACC";
  uint8 public decimals = 6;

  // internal variables

  // events

  // public functions
  constructor() public {
    //init _totalSupply
    _totalSupply = 30 * (10 ** 9) * (10 ** uint256(decimals));

    _balances[msg.sender] = _totalSupply;
    emit Transfer(0x0, msg.sender, _totalSupply);
  }


  // internal functions
}