ETH Price: $2,011.58 (+4.77%)
 

Overview

ETH Balance

0.000000007421622327 ETH

Eth Value

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

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep49387872018-01-20 5:30:042962 days ago1516426204IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49387552018-01-20 5:21:132962 days ago1516425673IN
0x0e489D89...a3A93ffcF
0.18841777 ETH0.0010525550
Sweep49331002018-01-19 5:34:142963 days ago1516340054IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49330652018-01-19 5:23:222963 days ago1516339402IN
0x0e489D89...a3A93ffcF
0.24909856 ETH0.0010946552
Sweep49275742018-01-18 5:54:292964 days ago1516254869IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49275472018-01-18 5:47:542964 days ago1516254474IN
0x0e489D89...a3A93ffcF
0.28798869 ETH0.001073651
Sweep49220012018-01-17 5:52:122965 days ago1516168332IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49219742018-01-17 5:42:452965 days ago1516167765IN
0x0e489D89...a3A93ffcF
0.34227773 ETH0.001073651
Sweep49165492018-01-16 6:01:052965 days ago1516082465IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49165162018-01-16 5:54:032966 days ago1516082043IN
0x0e489D89...a3A93ffcF
0.34534605 ETH0.001073651
Sweep49109602018-01-15 5:25:522967 days ago1515993952IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49109352018-01-15 5:19:032967 days ago1515993543IN
0x0e489D89...a3A93ffcF
0.36106082 ETH0.001073651
Sweep49054912018-01-14 5:58:432967 days ago1515909523IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer49054532018-01-14 5:49:532968 days ago1515908993IN
0x0e489D89...a3A93ffcF
0.37109082 ETH0.001073651
Sweep48998592018-01-13 5:15:112969 days ago1515820511IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer48998282018-01-13 5:05:132969 days ago1515819913IN
0x0e489D89...a3A93ffcF
0.38206504 ETH0.0016840880
Sweep48944872018-01-12 5:22:072970 days ago1515734527IN
0x0e489D89...a3A93ffcF
0 ETH0.00599916120
Transfer48944482018-01-12 5:12:582970 days ago1515733978IN
0x0e489D89...a3A93ffcF
0.35979784 ETH0.0016840880
Sweep48890692018-01-11 5:22:482971 days ago1515648168IN
0x0e489D89...a3A93ffcF
0 ETH0.00732083146.25
Transfer48890352018-01-11 5:14:322971 days ago1515647672IN
0x0e489D89...a3A93ffcF
0.39374979 ETH0.0016840880
Sweep48844902018-01-10 9:19:072971 days ago1515575947IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer48844482018-01-10 9:09:222971 days ago1515575362IN
0x0e489D89...a3A93ffcF
0.36398992 ETH0.0016840880
Sweep48782332018-01-09 5:13:402973 days ago1515474820IN
0x0e489D89...a3A93ffcF
0 ETH0.0045051390
Transfer48782052018-01-09 5:05:452973 days ago1515474345IN
0x0e489D89...a3A93ffcF
0.33977257 ETH0.0012630660
Sweep48726472018-01-08 4:29:052974 days ago1515385745IN
0x0e489D89...a3A93ffcF
0 ETH0.0030034260
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer49387872018-01-20 5:30:042962 days ago1516426204
0x0e489D89...a3A93ffcF
0.18841777 ETH
Transfer49331002018-01-19 5:34:142963 days ago1516340054
0x0e489D89...a3A93ffcF
0.24909857 ETH
Transfer49275742018-01-18 5:54:292964 days ago1516254869
0x0e489D89...a3A93ffcF
0.2879887 ETH
Transfer49220012018-01-17 5:52:122965 days ago1516168332
0x0e489D89...a3A93ffcF
0.34227773 ETH
Transfer49165492018-01-16 6:01:052965 days ago1516082465
0x0e489D89...a3A93ffcF
0.34534606 ETH
Transfer49109602018-01-15 5:25:522967 days ago1515993952
0x0e489D89...a3A93ffcF
0.36106082 ETH
Transfer49054912018-01-14 5:58:432967 days ago1515909523
0x0e489D89...a3A93ffcF
0.37109082 ETH
Transfer48998592018-01-13 5:15:112969 days ago1515820511
0x0e489D89...a3A93ffcF
0.38206505 ETH
Transfer48944872018-01-12 5:22:072970 days ago1515734527
0x0e489D89...a3A93ffcF
0.35979785 ETH
Transfer48890692018-01-11 5:22:482971 days ago1515648168
0x0e489D89...a3A93ffcF
0.3937498 ETH
Transfer48844902018-01-10 9:19:072971 days ago1515575947
0x0e489D89...a3A93ffcF
0.36398993 ETH
Transfer48782332018-01-09 5:13:402973 days ago1515474820
0x0e489D89...a3A93ffcF
0.33977257 ETH
Transfer48726472018-01-08 4:29:052974 days ago1515385745
0x0e489D89...a3A93ffcF
0.38921384 ETH
Transfer48673522018-01-07 5:24:242975 days ago1515302664
0x0e489D89...a3A93ffcF
0.35207436 ETH
Transfer48626392018-01-06 8:46:232975 days ago1515228383
0x0e489D89...a3A93ffcF
0.34652289 ETH
Transfer48606862018-01-05 23:57:082976 days ago1515196628
0x0e489D89...a3A93ffcF
0.39116901 ETH
Transfer48523712018-01-04 10:46:112977 days ago1515062771
0x0e489D89...a3A93ffcF
0.42112608 ETH
Transfer48456492018-01-03 5:23:342979 days ago1514957014
0x0e489D89...a3A93ffcF
0.41087627 ETH
Transfer48398152018-01-02 4:54:052980 days ago1514868845
0x0e489D89...a3A93ffcF
0.41114501 ETH
Transfer48338442018-01-01 4:36:172981 days ago1514781377
0x0e489D89...a3A93ffcF
0.41286172 ETH
Transfer48278882017-12-31 4:24:432982 days ago1514694283
0x0e489D89...a3A93ffcF
0.39421101 ETH
Transfer48223672017-12-30 5:49:382983 days ago1514612978
0x0e489D89...a3A93ffcF
0.40443856 ETH
Transfer48163482017-12-29 4:38:102984 days ago1514522290
0x0e489D89...a3A93ffcF
0.39837136 ETH
Transfer48105182017-12-28 4:41:512985 days ago1514436111
0x0e489D89...a3A93ffcF
0.41628394 ETH
Transfer48042982017-12-27 3:49:402986 days ago1514346580
0x0e489D89...a3A93ffcF
0.42587856 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.