Transaction Hash:
Block:
11644150 at Jan-13-2021 03:10:32 AM +UTC
Transaction Fee:
0.005106828 ETH
$11.09
Gas Used:
55,509 Gas / 92 Gwei
Emitted Events:
| 288 |
CIBSToken.Transfer( from=[Sender] 0x48c120b2886b96589082e01d3845e591dd4239f7, to=0xB40eeAA652E808a83a2Df451b14b6af92eEf095A, value=26795000000000000000 )
|
Account State Difference:
| Address | Before | After | State Difference | ||
|---|---|---|---|---|---|
| 0x48C120b2...1dd4239f7 |
0.240330757 Eth
Nonce: 14
|
0.235223929 Eth
Nonce: 15
| 0.005106828 | ||
| 0x51b4b27a...cD7Fe5137 | |||||
|
0xEA674fdD...16B898ec8
Miner
| (Ethermine) | 1,586.511271994065813391 Eth | 1,586.516378822065813391 Eth | 0.005106828 |
Execution Trace
CIBSToken.transfer( _to=0xB40eeAA652E808a83a2Df451b14b6af92eEf095A, _value=26795000000000000000 )
transfer[CIBSToken (ln:45)]
_transfer[CIBSToken (ln:46)]Transfer[CIBSToken (ln:41)]
pragma solidity ^0.4.16;
interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; }
contract CIBSToken {
string public name;
string public symbol;
uint8 public decimals = 18;
uint256 public totalSupply;
mapping (address => uint256) public balanceOf;
mapping (address => mapping (address => uint256)) public allowance;
event Transfer(address indexed from, address indexed to, uint256 value);
event Burn(address indexed from, uint256 value);
function CIBSToken (
uint256 initialSupply,
string tokenName,
string tokenSymbol
) public {
totalSupply = initialSupply * 10 ** uint256(decimals);
balanceOf[msg.sender] = totalSupply;
name = tokenName;
symbol = tokenSymbol;
}
function _transfer(address _from, address _to, uint _value) internal {
require(_to != 0x0);
require(balanceOf[_from] >= _value);
require(balanceOf[_to] + _value >= balanceOf[_to]);
uint previousBalances = balanceOf[_from] + balanceOf[_to];
balanceOf[_from] -= _value;
balanceOf[_to] += _value;
emit Transfer(_from, _to, _value);
assert(balanceOf[_from] + balanceOf[_to] == previousBalances);
}
function transfer(address _to, uint256 _value) public {
_transfer(msg.sender, _to, _value);
}
function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
require(_value <= allowance[_from][msg.sender]);
allowance[_from][msg.sender] -= _value;
_transfer(_from, _to, _value);
return true;
}
function approve(address _spender, uint256 _value) public
returns (bool success) {
allowance[msg.sender][_spender] = _value;
return true;
}
function approveAndCall(address _spender, uint256 _value, bytes _extraData)
public
returns (bool success) {
tokenRecipient spender = tokenRecipient(_spender);
if (approve(_spender, _value)) {
spender.receiveApproval(msg.sender, _value, this, _extraData);
return true;
}
}
function burn(uint256 _value) public returns (bool success) {
require(balanceOf[msg.sender] >= _value);
balanceOf[msg.sender] -= _value;
totalSupply -= _value;
emit Burn(msg.sender, _value);
return true;
}
function burnFrom(address _from, uint256 _value) public returns (bool success) {
require(balanceOf[_from] >= _value);
require(_value <= allowance[_from][msg.sender]);
balanceOf[_from] -= _value;
allowance[_from][msg.sender] -= _value;
totalSupply -= _value;
emit Burn(_from, _value);
return true;
}
function transferArray(address[] _to, uint256[] _value) public {
for(uint256 i = 0; i < _to.length; i++){
_transfer(msg.sender, _to[i], _value[i]);
}
}
}