Transaction Hash:
Block:
5361550 at Apr-01-2018 02:52:58 PM +UTC
Transaction Fee:
0.000143103 ETH
$0.35
Gas Used:
47,701 Gas / 3 Gwei
Emitted Events:
50 |
RamenCoin.Transfer( _from=0x4b84e4eC2cdCE70Aa929dB0F169568E1f2D50Bb8, _to=[Sender] 0x329fddfaa6f0bfdb22305830fc03ff8061a6fad7, _value=1750000000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x329fdDfa...061A6FAD7 |
0.058255573 Eth
Nonce: 311
|
0.05761247 Eth
Nonce: 312
| 0.000643103 | ||
0x4b84e4eC...1f2D50Bb8 | 0.214042553593744173 Eth | 0.214542553593744173 Eth | 0.0005 | ||
0x5A0b54D5...D3E029c4c
Miner
| (Spark Pool) | 3,119.1161238609198837 Eth | 3,119.1162669639198837 Eth | 0.000143103 | |
0x6feb3a07...d068Ec921 |
Execution Trace
ETH 0.0005
RamenCoin.CALL( )

- ETH 0.0005
0x4b84e4ec2cdce70aa929db0f169568e1f2d50bb8.CALL( )
[RamenCoin (ln:122)]
Transfer[RamenCoin (ln:132)]
transfer[RamenCoin (ln:134)]
pragma solidity ^0.4.19; /* * Ramen Coin is the FIRST and ONLY cryptocurrency for Ramen Enthusiasts with a mission to fight hunger GLOBALLY. * * * This the OFFICIAL token contract for Ramen Coin. * Our old contract address is no longer valid. DO NOT accept tokens from the old contract. * Old Contract Address: (DO NOT USE) 0x878fcd33cdf5b66edce691bca5e1f442688c8ece (DO NOT USE) * * VALID contract address can be verified on https://ramencoin.me or our official social media channels * Twitter: @RamenCoin2018 * Telegram: @ramencoin * Reddit: /r/RamenCoin * Facebook: RamenCoin * Instagram: @ramencoin * BitcoinTalk: https://bitcointalk.org/index.php?topic=3171591 * * * Etherscan will also display our Official Links and Token Image */ contract Token { /// @return total amount of tokens function totalSupply() constant returns (uint256 supply) {} /// @param _owner The address from which the balance will be retrieved /// @return The balance function balanceOf(address _owner) constant returns (uint256 balance) {} /// @notice send `_value` token to `_to` from `msg.sender` /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transfer(address _to, uint256 _value) returns (bool success) {} /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from` /// @param _from The address of the sender /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {} /// @notice `msg.sender` approves `_addr` to spend `_value` tokens /// @param _spender The address of the account able to transfer the tokens /// @param _value The amount of wei to be approved for transfer /// @return Whether the approval was successful or not function approve(address _spender, uint256 _value) returns (bool success) {} /// @param _owner The address of the account owning tokens /// @param _spender The address of the account able to transfer the tokens /// @return Amount of remaining tokens allowed to spent function allowance(address _owner, address _spender) constant returns (uint256 remaining) {} event Transfer(address indexed _from, address indexed _to, uint256 _value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); } contract StandardToken is Token { function transfer(address _to, uint256 _value) returns (bool success) { if (balances[msg.sender] >= _value && _value > 0) { balances[msg.sender] -= _value; balances[_to] += _value; Transfer(msg.sender, _to, _value); return true; } else { return false; } } function transferFrom(address _from, address _to, uint256 _value) returns (bool success) { if (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); return true; } else { return false; } } function balanceOf(address _owner) constant returns (uint256 balance) { return balances[_owner]; } function approve(address _spender, uint256 _value) returns (bool success) { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) constant returns (uint256 remaining) { return allowed[_owner][_spender]; } mapping (address => uint256) balances; mapping (address => mapping (address => uint256)) allowed; uint256 public totalSupply; } contract RamenCoin is StandardToken { string public name; uint8 public decimals; string public symbol; string public version = '0.0'; uint256 public unitsOneEthCanBuy; uint256 public totalEthInWei; address public fundsWallet; function RamenCoin() { balances[msg.sender] = 350000000000000000000000000; totalSupply = 350000000000000000000000000; name = "Ramen Coin"; decimals = 18; symbol = "RAMEN"; unitsOneEthCanBuy = 3500; fundsWallet = msg.sender; } function() payable{ totalEthInWei = totalEthInWei + msg.value; uint256 amount = msg.value * unitsOneEthCanBuy; if (balances[fundsWallet] < amount) { return; } balances[fundsWallet] = balances[fundsWallet] - amount; balances[msg.sender] = balances[msg.sender] + amount; Transfer(fundsWallet, msg.sender, amount); fundsWallet.transfer(msg.value); } function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success) { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); if(!_spender.call(bytes4(bytes32(sha3("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData)) { throw; } return true; } /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ /** * @dev Multiplies two numbers, throws on overflow. */ 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; } /** * @dev Integer division of two numbers, truncating the quotient. */ 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; } /** * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } }