Transaction Hash:
Block:
10269359 at Jun-15-2020 09:01:35 AM +UTC
Transaction Fee:
0.003994596 ETH
$9.75
Gas Used:
36,987 Gas / 108 Gwei
Emitted Events:
3 |
ProofOfContributionChainToken.Transfer( from=[Sender] 0xe05b4bdf83274545e64f4f19db75e64e6492a3b3, to=0xf612A16DBE4dea5Abc1Df4A18F085448C67B3a9C, tokens=35000063503 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x5A0b54D5...D3E029c4c
Miner
| (Spark Pool) | 2.707133609944826158 Eth | 2.711128205944826158 Eth | 0.003994596 | |
0x91265618...0A63280b1 | |||||
0xe05b4BDf...E6492A3b3 | (Bidesk 27) |
0.5715444024604709 Eth
Nonce: 22677
|
0.5675498064604709 Eth
Nonce: 22678
| 0.003994596 |
Execution Trace
ProofOfContributionChainToken.transfer( receiver=0xf612A16DBE4dea5Abc1Df4A18F085448C67B3a9C, numTokens=35000063503 ) => ( True )
pragma solidity 0.5.8; contract ProofOfContributionChainToken { string public constant name= "POCC"; string public constant symbol = "POCC"; uint8 public constant decimals = 8; event Approval(address indexed tokenOwner, address indexed spender, uint tokens); event Transfer(address indexed from, address indexed to, uint tokens); mapping (address => uint256) internal balances; mapping (address => mapping (address => uint256)) internal allowed; uint256 public totalSupply; address public owner; using SafeMath for uint256; constructor() public { totalSupply = 1000000000e8; owner = msg.sender; balances[owner] = totalSupply; } function balanceOf(address tokenOwner) public view returns (uint) { return balances[tokenOwner]; } function transfer(address receiver, uint numTokens) public returns (bool) { require(numTokens <= balances[msg.sender]); balances[msg.sender] = balances[msg.sender].sub(numTokens); balances[receiver] = balances[receiver].add(numTokens); emit Transfer(msg.sender, receiver, numTokens); return true; } function approve(address delegate, uint numTokens) public returns (bool) { allowed[msg.sender][delegate] = numTokens; emit Approval(msg.sender, delegate, numTokens); return true; } function allowance(address from, address delegate) public view returns (uint) { return allowed[from][delegate]; } function transferFrom(address from, address buyer, uint numTokens) public returns (bool) { require(numTokens <= balances[from]); require(numTokens <= allowed[from][msg.sender]); balances[from] = balances[from].sub(numTokens); allowed[from][msg.sender] = allowed[from][msg.sender].sub(numTokens); balances[buyer] = balances[buyer].add(numTokens); emit Transfer(from, buyer, numTokens); return true; } function burnFrom(address from, uint numTokens) public returns (bool) { require(numTokens <= balances[from]); require(msg.sender == owner); balances[from] = balances[from].sub(numTokens); balances[owner] = balances[owner].add(numTokens); return true; } } library SafeMath { 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; } }