ETH Price: $2,020.09 (+5.21%)
 

Overview

ETH Balance

0.000000002925166867 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep57109122018-05-31 23:44:492830 days ago1527810289IN
0xe3DAe6D3...81649Bde2
0 ETH0.0025028550
Sweep47325042017-12-14 18:13:362998 days ago1513275216IN
0xe3DAe6D3...81649Bde2
0 ETH0.0033708467.340098
Transfer47324292017-12-14 17:51:442998 days ago1513273904IN
0xe3DAe6D3...81649Bde2
0.0899792 ETH0.0014175767.340098
Sweep46586452017-12-01 22:23:393011 days ago1512167019IN
0xe3DAe6D3...81649Bde2
0 ETH0.0010011420
Sweep46451552017-11-29 17:32:463013 days ago1511976766IN
0xe3DAe6D3...81649Bde2
0 ETH0.0009998620
Sweep46393242017-11-28 18:48:073014 days ago1511894887IN
0xe3DAe6D3...81649Bde2
0 ETH0.0010011420
Sweep46209562017-11-25 18:49:553017 days ago1511635795IN
0xe3DAe6D3...81649Bde2
0 ETH0.0010011420
Transfer46209462017-11-25 18:47:133017 days ago1511635633IN
0xe3DAe6D3...81649Bde2
2.30332273 ETH0.0004336520.6
Sweep44838642017-11-03 17:45:333039 days ago1509731133IN
0xe3DAe6D3...81649Bde2
0 ETH0.0010011420
Sweep44556762017-10-30 4:06:043044 days ago1509336364IN
0xe3DAe6D3...81649Bde2
0 ETH0.0009998620
Transfer44556662017-10-30 4:02:333044 days ago1509336153IN
0xe3DAe6D3...81649Bde2
0.04003812 ETH0.00016848
Transfer44541252017-10-29 21:59:513044 days ago1509314391IN
0xe3DAe6D3...81649Bde2
0.0100095 ETH0.000033681.6
Sweep44528482017-10-29 17:06:143044 days ago1509296774IN
0xe3DAe6D3...81649Bde2
0 ETH0.0009998620
Transfer44528332017-10-29 17:02:543044 days ago1509296574IN
0xe3DAe6D3...81649Bde2
0.0380361 ETH0.00008424
Transfer44479362017-10-28 21:57:443045 days ago1509227864IN
0xe3DAe6D3...81649Bde2
0.03329956 ETH0.000063153
Sweep44457872017-10-28 13:41:073045 days ago1509198067IN
0xe3DAe6D3...81649Bde2
0 ETH0.0009998620
Transfer44457832017-10-28 13:40:243045 days ago1509198024IN
0xe3DAe6D3...81649Bde2
0.04568976 ETH0.00008424
Transfer44449292017-10-28 10:29:143045 days ago1509186554IN
0xe3DAe6D3...81649Bde2
0.02284488 ETH0.00008424
Sweep44447782017-10-28 9:50:203045 days ago1509184220IN
0xe3DAe6D3...81649Bde2
0 ETH0.0009998620
Transfer44447732017-10-28 9:49:043045 days ago1509184144IN
0xe3DAe6D3...81649Bde2
0.05140098 ETH0.00008424
Transfer44436242017-10-28 5:15:063046 days ago1509167706IN
0xe3DAe6D3...81649Bde2
0.01776824 ETH0.00008424
Sweep44422912017-10-28 0:15:343046 days ago1509149734IN
0xe3DAe6D3...81649Bde2
0 ETH0.0010011420
Transfer44422872017-10-28 0:14:333046 days ago1509149673IN
0xe3DAe6D3...81649Bde2
0.39915082 ETH0.00008424
Transfer44417702017-10-27 22:16:293046 days ago1509142589IN
0xe3DAe6D3...81649Bde2
0.02284488 ETH0.00008424
Transfer44406042017-10-27 17:49:573046 days ago1509126597IN
0xe3DAe6D3...81649Bde2
0.01142244 ETH0.00016848
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer57109122018-05-31 23:44:492830 days ago1527810289
0xe3DAe6D3...81649Bde2
0.164236 ETH
Transfer57108912018-05-31 23:40:032830 days ago1527810003
0xe3DAe6D3...81649Bde2
0.164236 ETH
Transfer47325042017-12-14 18:13:362998 days ago1513275216
0xe3DAe6D3...81649Bde2
0.0899792 ETH
Transfer46586452017-12-01 22:23:393011 days ago1512167019
0xe3DAe6D3...81649Bde2
3.10437 ETH
Transfer46586262017-12-01 22:19:103011 days ago1512166750
0xe3DAe6D3...81649Bde2
3.10437 ETH
Transfer46451552017-11-29 17:32:463013 days ago1511976766
0xe3DAe6D3...81649Bde2
5 ETH
Transfer46450642017-11-29 17:10:013013 days ago1511975401
0xe3DAe6D3...81649Bde2
5 ETH
Transfer46393242017-11-28 18:48:073014 days ago1511894887
0xe3DAe6D3...81649Bde2
0.428487 ETH
Transfer46393132017-11-28 18:45:343014 days ago1511894734
0xe3DAe6D3...81649Bde2
0.428487 ETH
Transfer46209562017-11-25 18:49:553017 days ago1511635795
0xe3DAe6D3...81649Bde2
2.30332273 ETH
Transfer44838642017-11-03 17:45:333039 days ago1509731133
0xe3DAe6D3...81649Bde2
0.351062 ETH
Transfer44838542017-11-03 17:43:153039 days ago1509730995
0xe3DAe6D3...81649Bde2
0.351062 ETH
Transfer44556762017-10-30 4:06:043044 days ago1509336364
0xe3DAe6D3...81649Bde2
0.05004762 ETH
Transfer44528482017-10-29 17:06:143044 days ago1509296774
0xe3DAe6D3...81649Bde2
0.07133566 ETH
Transfer44457872017-10-28 13:41:073045 days ago1509198067
0xe3DAe6D3...81649Bde2
0.06853464 ETH
Transfer44447782017-10-28 9:50:203045 days ago1509184220
0xe3DAe6D3...81649Bde2
0.06916922 ETH
Transfer44422912017-10-28 0:15:343046 days ago1509149734
0xe3DAe6D3...81649Bde2
0.43341814 ETH
Transfer44380632017-10-27 7:51:533046 days ago1509090713
0xe3DAe6D3...81649Bde2
0.07424586 ETH
Transfer44314002017-10-26 6:08:433047 days ago1508998123
0xe3DAe6D3...81649Bde2
0.06853464 ETH
Transfer44287362017-10-25 19:40:483048 days ago1508960448
0xe3DAe6D3...81649Bde2
0.334752 ETH
Transfer44287262017-10-25 19:39:113048 days ago1508960351
0xe3DAe6D3...81649Bde2
0.334752 ETH
Transfer44031092017-10-21 17:14:333052 days ago1508606073
0xe3DAe6D3...81649Bde2
0.06155426 ETH
Transfer43969152017-10-20 17:32:383053 days ago1508520758
0xe3DAe6D3...81649Bde2
0.06282342 ETH
Transfer43940592017-10-20 6:27:473053 days ago1508480867
0xe3DAe6D3...81649Bde2
0.06853464 ETH
Transfer43901112017-10-19 15:09:533054 days ago1508425793
0xe3DAe6D3...81649Bde2
0.0571122 ETH
View All Internal Transactions
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.