ETH Price: $2,144.81 (+8.10%)
 

Overview

ETH Balance

0.0000000055761938 ETH

Eth Value

Less Than $0.01 (@ $2,144.81/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep58847472018-07-01 5:16:432803 days ago1530422203IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0029995860
Transfer58847162018-07-01 5:09:012803 days ago1530421741IN
0xdEEe7b9e...A4fC00a1f
0.05010563 ETH0.000021051
Sweep58525472018-06-25 15:44:292809 days ago1529941469IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer58525152018-06-25 15:36:162809 days ago1529940976IN
0xdEEe7b9e...A4fC00a1f
0.05015682 ETH0.000021051
Sweep58192642018-06-19 23:00:032814 days ago1529449203IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer58192352018-06-19 22:52:512814 days ago1529448771IN
0xdEEe7b9e...A4fC00a1f
0.05005755 ETH0.000021051
Sweep57886352018-06-14 17:37:062819 days ago1528997826IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer57886132018-06-14 17:30:162819 days ago1528997416IN
0xdEEe7b9e...A4fC00a1f
0.05013978 ETH0.000021051
Sweep57571882018-06-09 4:54:302825 days ago1528520070IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer57571712018-06-09 4:50:092825 days ago1528519809IN
0xdEEe7b9e...A4fC00a1f
0.05016172 ETH0.000021051
Sweep57280492018-06-04 0:56:542830 days ago1528073814IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer57280232018-06-04 0:51:192830 days ago1528073479IN
0xdEEe7b9e...A4fC00a1f
0.05001062 ETH0.000021051
Sweep56999232018-05-30 0:56:522835 days ago1527641812IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer56999052018-05-30 0:52:452835 days ago1527641565IN
0xdEEe7b9e...A4fC00a1f
0.0500809 ETH0.000021051
Sweep56712272018-05-24 23:22:142840 days ago1527204134IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer56711902018-05-24 23:12:542840 days ago1527203574IN
0xdEEe7b9e...A4fC00a1f
0.05002376 ETH0.000021051
Sweep56419782018-05-19 18:49:322845 days ago1526755772IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer56419622018-05-19 18:45:352845 days ago1526755535IN
0xdEEe7b9e...A4fC00a1f
0.05004873 ETH0.000021051
Sweep56121912018-05-14 12:34:242851 days ago1526301264IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer56121412018-05-14 12:20:532851 days ago1526300453IN
0xdEEe7b9e...A4fC00a1f
0.05022319 ETH0.000021051
Sweep55825872018-05-09 8:32:462856 days ago1525854766IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer55825362018-05-09 8:15:592856 days ago1525853759IN
0xdEEe7b9e...A4fC00a1f
0.05016082 ETH0.000021051
Sweep53083612018-03-23 17:15:102902 days ago1521825310IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
Transfer53083372018-03-23 17:09:252902 days ago1521824965IN
0xdEEe7b9e...A4fC00a1f
0.0500779 ETH0.000021051
Sweep52294462018-03-10 9:19:242916 days ago1520673564IN
0xdEEe7b9e...A4fC00a1f
0 ETH0.0024996550
View all transactions

Latest 19 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer58847472018-07-01 5:16:432803 days ago1530422203
0xdEEe7b9e...A4fC00a1f
0.05010563 ETH
Transfer58525472018-06-25 15:44:292809 days ago1529941469
0xdEEe7b9e...A4fC00a1f
0.05015683 ETH
Transfer58192642018-06-19 23:00:032814 days ago1529449203
0xdEEe7b9e...A4fC00a1f
0.05005755 ETH
Transfer57886352018-06-14 17:37:062819 days ago1528997826
0xdEEe7b9e...A4fC00a1f
0.05013978 ETH
Transfer57571882018-06-09 4:54:302825 days ago1528520070
0xdEEe7b9e...A4fC00a1f
0.05016173 ETH
Transfer57280492018-06-04 0:56:542830 days ago1528073814
0xdEEe7b9e...A4fC00a1f
0.05001062 ETH
Transfer56999232018-05-30 0:56:522835 days ago1527641812
0xdEEe7b9e...A4fC00a1f
0.0500809 ETH
Transfer56712272018-05-24 23:22:142840 days ago1527204134
0xdEEe7b9e...A4fC00a1f
0.05002376 ETH
Transfer56419782018-05-19 18:49:322845 days ago1526755772
0xdEEe7b9e...A4fC00a1f
0.05004874 ETH
Transfer56121912018-05-14 12:34:242851 days ago1526301264
0xdEEe7b9e...A4fC00a1f
0.05022319 ETH
Transfer55825872018-05-09 8:32:462856 days ago1525854766
0xdEEe7b9e...A4fC00a1f
0.05016083 ETH
Transfer53083612018-03-23 17:15:102902 days ago1521825310
0xdEEe7b9e...A4fC00a1f
0.05007791 ETH
Transfer52294462018-03-10 9:19:242916 days ago1520673564
0xdEEe7b9e...A4fC00a1f
0.05026319 ETH
Transfer50917092018-02-15 0:43:282939 days ago1518655408
0xdEEe7b9e...A4fC00a1f
0.14852906 ETH
Transfer49196002018-01-16 19:26:412968 days ago1516130801
0xdEEe7b9e...A4fC00a1f
0.15440174 ETH
Transfer47786872017-12-22 20:53:472993 days ago1513976027
0xdEEe7b9e...A4fC00a1f
0.16191441 ETH
Transfer47620262017-12-19 21:31:212996 days ago1513719081
0xdEEe7b9e...A4fC00a1f
0.11981661 ETH
Transfer47288942017-12-14 3:00:043002 days ago1513220404
0xdEEe7b9e...A4fC00a1f
0.13132548 ETH
Transfer47282212017-12-14 0:07:483002 days ago1513210068  Contract Creation0 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

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

Contract Name:
UserWallet

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-08-15
*/

pragma solidity ^0.4.10;

// Copyright 2017 Bittrex

contract AbstractSweeper {
    function sweep(address token, uint amount) returns (bool);

    function () { throw; }

    Controller controller;

    function AbstractSweeper(address _controller) {
        controller = Controller(_controller);
    }

    modifier canSweep() {
        if (msg.sender != controller.authorizedCaller() && msg.sender != controller.owner()) throw;
        if (controller.halted()) throw;
        _;
    }
}

contract Token {
    function balanceOf(address a) returns (uint) {
        (a);
        return 0;
    }

    function transfer(address a, uint val) returns (bool) {
        (a);
        (val);
        return false;
    }
}

contract DefaultSweeper is AbstractSweeper {
    function DefaultSweeper(address controller)
             AbstractSweeper(controller) {}

    function sweep(address _token, uint _amount)
    canSweep
    returns (bool) {
        bool success = false;
        address destination = controller.destination();

        if (_token != address(0)) {
            Token token = Token(_token);
            uint amount = _amount;
            if (amount > token.balanceOf(this)) {
                return false;
            }

            success = token.transfer(destination, amount);
        }
        else {
            uint amountInWei = _amount;
            if (amountInWei > this.balance) {
                return false;
            }

            success = destination.send(amountInWei);
        }

        if (success) {
            controller.logSweep(this, destination, _token, _amount);
        }
        return success;
    }
}

contract UserWallet {
    AbstractSweeperList sweeperList;
    function UserWallet(address _sweeperlist) {
        sweeperList = AbstractSweeperList(_sweeperlist);
    }

    function () public payable { }

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

    function sweep(address _token, uint _amount)
    returns (bool) {
        (_amount);
        return sweeperList.sweeperOf(_token).delegatecall(msg.data);
    }
}

contract AbstractSweeperList {
    function sweeperOf(address _token) returns (address);
}

contract Controller is AbstractSweeperList {
    address public owner;
    address public authorizedCaller;

    address public destination;

    bool public halted;

    event LogNewWallet(address receiver);
    event LogSweep(address indexed from, address indexed to, address indexed token, uint amount);
    
    modifier onlyOwner() {
        if (msg.sender != owner) throw; 
        _;
    }

    modifier onlyAuthorizedCaller() {
        if (msg.sender != authorizedCaller) throw; 
        _;
    }

    modifier onlyAdmins() {
        if (msg.sender != authorizedCaller && msg.sender != owner) throw; 
        _;
    }

    function Controller() 
    {
        owner = msg.sender;
        destination = msg.sender;
        authorizedCaller = msg.sender;
    }

    function changeAuthorizedCaller(address _newCaller) onlyOwner {
        authorizedCaller = _newCaller;
    }

    function changeDestination(address _dest) onlyOwner {
        destination = _dest;
    }

    function changeOwner(address _owner) onlyOwner {
        owner = _owner;
    }

    function makeWallet() onlyAdmins returns (address wallet)  {
        wallet = address(new UserWallet(this));
        LogNewWallet(wallet);
    }

    function halt() onlyAdmins {
        halted = true;
    }

    function start() onlyOwner {
        halted = false;
    }

    address public defaultSweeper = address(new DefaultSweeper(this));
    mapping (address => address) sweepers;

    function addSweeper(address _token, address _sweeper) onlyOwner {
        sweepers[_token] = _sweeper;
    }

    function sweeperOf(address _token) returns (address) {
        address sweeper = sweepers[_token];
        if (sweeper == 0) sweeper = defaultSweeper;
        return sweeper;
    }

    function logSweep(address from, address to, address token, uint amount) {
        LogSweep(from, to, token, amount);
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"sweep","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"},{"inputs":[{"name":"_sweeperlist","type":"address"}],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"}]

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ 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.