ETH Price: $2,178.64 (+4.32%)

Contract

0xB9479Cba9c19dFd8002923742255F2700DFb8ECf
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep49052672018-01-14 4:58:342982 days ago1515905914IN
0xB9479Cba...00DFb8ECf
0 ETH0.0045051390
Transfer49052372018-01-14 4:52:542982 days ago1515905574IN
0xB9479Cba...00DFb8ECf
1.11691334 ETH0.0021051100
Sweep45460452017-11-13 17:05:133044 days ago1510592713IN
0xB9479Cba...00DFb8ECf
0 ETH0.0010011420
Transfer45460362017-11-13 17:03:353044 days ago1510592615IN
0xB9479Cba...00DFb8ECf
4.08517416 ETH0.0004210220
Sweep44015922017-10-21 11:21:133067 days ago1508584873IN
0xB9479Cba...00DFb8ECf
0 ETH0.0015497831
Transfer44015822017-10-21 11:18:443067 days ago1508584724IN
0xB9479Cba...00DFb8ECf
0.05420787 ETH0.0002105110
Sweep43663902017-10-14 23:46:593074 days ago1508024819IN
0xB9479Cba...00DFb8ECf
0 ETH0.0015517631
Transfer43663772017-10-14 23:40:583074 days ago1508024458IN
0xB9479Cba...00DFb8ECf
0.1612396 ETH0.0004420721
Sweep43589332017-10-12 10:21:053076 days ago1507803665IN
0xB9479Cba...00DFb8ECf
0 ETH0.0015497831
Transfer43589192017-10-12 10:12:283076 days ago1507803148IN
0xB9479Cba...00DFb8ECf
1.2 ETH0.0004420721
Sweep43567762017-10-11 16:05:053077 days ago1507737905IN
0xB9479Cba...00DFb8ECf
0 ETH0.0015497831
Transfer43567722017-10-11 16:03:213077 days ago1507737801IN
0xB9479Cba...00DFb8ECf
0.823536 ETH0.0004691122.28462425
Sweep43427362017-10-06 19:12:153082 days ago1507317135IN
0xB9479Cba...00DFb8ECf
0 ETH0.0015497831
Transfer43427202017-10-06 19:04:173082 days ago1507316657IN
0xB9479Cba...00DFb8ECf
1 ETH0.0004420721
Sweep43284142017-10-01 19:44:003087 days ago1506887040IN
0xB9479Cba...00DFb8ECf
0 ETH0.0015517631
Transfer43284022017-10-01 19:38:593087 days ago1506886739IN
0xB9479Cba...00DFb8ECf
1 ETH0.0004420721
Transfer43024492017-09-22 18:45:113096 days ago1506105911IN
0xB9479Cba...00DFb8ECf
0.0113175 ETH0.0004420721
Sweep43021902017-09-22 16:35:173096 days ago1506098117IN
0xB9479Cba...00DFb8ECf
0 ETH0.002552951
Transfer43021852017-09-22 16:33:293096 days ago1506098009IN
0xB9479Cba...00DFb8ECf
0.05137837 ETH0.0004420721
Transfer43021852017-09-22 16:33:293096 days ago1506098009IN
0xB9479Cba...00DFb8ECf
0.06036 ETH0.0004420721
Sweep43001482017-09-22 0:29:193096 days ago1506040159IN
0xB9479Cba...00DFb8ECf
0 ETH0.0025496451
Transfer43001392017-09-22 0:25:043096 days ago1506039904IN
0xB9479Cba...00DFb8ECf
0.0716775 ETH0.0004420721
Transfer43001392017-09-22 0:25:043096 days ago1506039904IN
0xB9479Cba...00DFb8ECf
0.06026685 ETH0.0004420721
Transfer42972422017-09-21 5:14:163097 days ago1505970856IN
0xB9479Cba...00DFb8ECf
0.01761407 ETH0.0004839722.99035682
Transfer42972412017-09-21 5:14:123097 days ago1505970852IN
0xB9479Cba...00DFb8ECf
0.022635 ETH0.0004839722.99035682
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer49052672018-01-14 4:58:342982 days ago1515905914
0xB9479Cba...00DFb8ECf
1.11691334 ETH
Transfer45460452017-11-13 17:05:133044 days ago1510592713
0xB9479Cba...00DFb8ECf
4.08517416 ETH
Transfer44015922017-10-21 11:21:133067 days ago1508584873
0xB9479Cba...00DFb8ECf
0.05420787 ETH
Transfer43663902017-10-14 23:46:593074 days ago1508024819
0xB9479Cba...00DFb8ECf
0.1612396 ETH
Transfer43589332017-10-12 10:21:053076 days ago1507803665
0xB9479Cba...00DFb8ECf
1.2 ETH
Transfer43567762017-10-11 16:05:053077 days ago1507737905
0xB9479Cba...00DFb8ECf
0.823536 ETH
Transfer43427362017-10-06 19:12:153082 days ago1507317135
0xB9479Cba...00DFb8ECf
1 ETH
Transfer43284142017-10-01 19:44:003087 days ago1506887040
0xB9479Cba...00DFb8ECf
1.0113175 ETH
Transfer43021902017-09-22 16:35:173096 days ago1506098117
0xB9479Cba...00DFb8ECf
0.11173837 ETH
Transfer43001482017-09-22 0:29:193096 days ago1506040159
0xB9479Cba...00DFb8ECf
0.17219342 ETH
Transfer42963112017-09-20 23:07:323098 days ago1505948852
0xB9479Cba...00DFb8ECf
0.05307206 ETH
Transfer42951462017-09-20 15:22:183098 days ago1505920938
0xB9479Cba...00DFb8ECf
0.06602287 ETH
Transfer42937542017-09-20 6:07:103098 days ago1505887630
0xB9479Cba...00DFb8ECf
0.07419196 ETH
Transfer42920082017-09-19 18:39:223099 days ago1505846362
0xB9479Cba...00DFb8ECf
0.12653462 ETH
Transfer42890782017-09-18 23:10:423100 days ago1505776242
0xB9479Cba...00DFb8ECf
0.05279244 ETH
Transfer42878922017-09-18 15:17:363100 days ago1505747856
0xB9479Cba...00DFb8ECf
0.05292426 ETH
Transfer42866642017-09-18 7:01:083100 days ago1505718068
0xB9479Cba...00DFb8ECf
0.05690697 ETH
Transfer42848372017-09-17 18:47:593101 days ago1505674079
0xB9479Cba...00DFb8ECf
0.08923537 ETH
Transfer42783212017-09-15 23:23:243103 days ago1505517804
0xB9479Cba...00DFb8ECf
0.13922919 ETH
Transfer42770702017-09-15 15:10:543103 days ago1505488254
0xB9479Cba...00DFb8ECf
1.4196122 ETH
Transfer42753112017-09-15 3:25:253103 days ago1505445925
0xB9479Cba...00DFb8ECf
0.07976862 ETH
Transfer42736382017-09-14 16:17:553104 days ago1505405875
0xB9479Cba...00DFb8ECf
0.09671128 ETH
Transfer42715982017-09-14 2:41:083104 days ago1505356868
0xB9479Cba...00DFb8ECf
0.05431905 ETH
Transfer42704162017-09-13 18:40:253105 days ago1505328025
0xB9479Cba...00DFb8ECf
0.05814726 ETH
Transfer42691442017-09-13 10:15:003105 days ago1505297700
0xB9479Cba...00DFb8ECf
0.12727463 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.