ETH Price: $2,061.35 (-5.55%)
Gas: 0.49 Gwei
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer Token59825302018-07-17 20:34:402427 days ago1531859680IN
0xe11a4021...Eeb5b93ce
0 ETH0.000142025
Transfer Token54616512018-04-18 8:42:222517 days ago1524040942IN
0xe11a4021...Eeb5b93ce
0 ETH0.000113624
Transfer Token53733232018-04-03 13:36:302532 days ago1522762590IN
0xe11a4021...Eeb5b93ce
0 ETH0.000173624

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x850c3bEa...E0aEC517E
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Wallet

Compiler Version
v0.4.14+commit.c2215d46

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-10-04
*/

/**
 * Verified by 3esmit
*/

pragma solidity ^0.4.13;

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
    uint256 public totalSupply;
    function balanceOf(address who) constant returns (uint256);
    function transfer(address to, uint256 value) returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
    
    function mul(uint256 a, uint256 b) internal constant returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function div(uint256 a, uint256 b) internal constant 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 constant returns (uint256) {
        assert(b <= a);
        return a - b;
    }

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

/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances. 
 */
contract BasicToken is ERC20Basic {
    
    using SafeMath for uint256;

    mapping(address => uint256) balances;

    /**
    * @dev transfer token for a specified address
    * @param _to The address to transfer to.
    * @param _value The amount to be transferred.
    */
    function transfer(address _to, uint256 _value) returns (bool) {
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        Transfer(msg.sender, _to, _value);
        return true;
    }

    /**
    * @dev Gets the balance of the specified address.
    * @param _owner The address to query the the balance of. 
    * @return An uint256 representing the amount owned by the passed address.
    */
    function balanceOf(address _owner) constant returns (uint256 balance) {
        return balances[_owner];
    }

}

contract Wallet {

	address owner;

	function Wallet() {
		owner = msg.sender;
	}

	function changeOwner(address _owner) returns (bool) {
		require(owner == msg.sender);
		owner = _owner;
		return true;
	}

	function transfer(address _to, uint _value) returns (bool) {
		require(owner == msg.sender);
		require(_value <= this.balance);
		_to.transfer(_value);
		return true;
	}

	function transferToken(address _token, address _to, uint _value) returns (bool) {
		require(owner == msg.sender);
		BasicToken token = BasicToken(_token);
		require(_value <= token.balanceOf(this));
		token.transfer(_to, _value);
		return true;
	}

	function () payable {}

	function tokenFallback(address _from, uint _value, bytes _data) {
		(_from); (_value); (_data);
	}
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"changeOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferToken","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"}]

Deployed Bytecode

0x606060405236156100465763ffffffff60e060020a600035041663a6f9dae1811461004a578063a9059cbb1461007d578063c0ee0b8a146100b3578063f5537ede1461011a575b5b5b005b341561005557600080fd5b610069600160a060020a0360043516610156565b604051901515815260200160405180910390f35b341561008857600080fd5b610069600160a060020a03600435166024356101a3565b604051901515815260200160405180910390f35b34156100be57600080fd5b61004660048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061021195505050505050565b005b341561012557600080fd5b610069600160a060020a0360043581169060243516604435610217565b604051901515815260200160405180910390f35b6000805433600160a060020a0390811691161461017257600080fd5b506000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03831617905560015b919050565b6000805433600160a060020a039081169116146101bf57600080fd5b600160a060020a033016318211156101d657600080fd5b600160a060020a03831682156108fc0283604051600060405180830381858888f19350505050151561020757600080fd5b5060015b92915050565b5b505050565b60008054819033600160a060020a0390811691161461023557600080fd5b5083600160a060020a0381166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561028e57600080fd5b6102c65a03f1151561029f57600080fd5b505050604051805184111590506102b557600080fd5b80600160a060020a031663a9059cbb858560006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561031257600080fd5b6102c65a03f1151561032357600080fd5b50505060405180515060019250505b5093925050505600a165627a7a72305820dbf709d6da55a39f83d69d90dc5090249ad9e6d26add0043cfdda954df1c89090029

Deployed Bytecode Sourcemap

2339:789:0:-;;;;;;;;-1:-1:-1;;;2339:789:0;;;;;;;;;;;;;;;;;;;;;;;;;2998:22;;2339:789;2431:125;;;;;;;;;;-1:-1:-1;;;;;2431:125:0;;;;;;;;;;;;;;;;;;;;;;2561:174;;;;;;;;;;-1:-1:-1;;;;;2561:174:0;;;;;;;;;;;;;;;;;;;;;;;;3025:100;;;;;;;;;;;;;-1:-1:-1;;;;;3025:100:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3025:100:0;;-1:-1:-1;3025:100:0;;-1:-1:-1;;;;;;3025:100:0;;;2740:253;;;;;;;;;;-1:-1:-1;;;;;2740:253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2431:125;2477:4;2496:5;;2505:10;-1:-1:-1;;;;;2496:19:0;;;:5;;:19;2488:28;;;;;;-1:-1:-1;2521:5:0;:14;;-1:-1:-1;;2521:14:0;-1:-1:-1;;;;;2521:14:0;;;;;-1:-1:-1;2431:125:0;;;;:::o;2561:174::-;2614:4;2633:5;;2642:10;-1:-1:-1;;;;;2633:19:0;;;:5;;:19;2625:28;;;;;;-1:-1:-1;;;;;2676:4:0;:12;;2666:22;;;2658:31;;;;;;-1:-1:-1;;;;;2694:12:0;;:20;;;;2707:6;2694:20;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2726:4:0;2561:174;;;;;:::o;3025:100::-;;;;;:::o;2740:253::-;2814:4;2833:5;;2814:4;;2842:10;-1:-1:-1;;;;;2833:19:0;;;:5;;:19;2825:28;;;;;;-1:-1:-1;2888:6:0;-1:-1:-1;;;;;2918:15:0;;;2934:4;2918:21;;;;;;;;-1:-1:-1;;;2918:21:0;;;;;;-1:-1:-1;;;;;2918:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2908:31;;;;-1:-1:-1;2900:40:0;;;;;;2945:5;-1:-1:-1;;;;;2945:14:0;;2960:3;2965:6;2945:27;;;;;;;;-1:-1:-1;;;2945:27:0;;;;;;-1:-1:-1;;;;;2945:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2984:4:0;;-1:-1:-1;;2740:253:0;;;;;;;:::o

Swarm Source

bzzr://dbf709d6da55a39f83d69d90dc5090249ad9e6d26add0043cfdda954df1c8909

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.