ETH Price: $1,959.00 (+1.52%)
 

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
Sweep55727362018-05-07 15:31:142854 days ago1525707074IN
0x37882CA8...f116E2433
0 ETH0.0025028550
Transfer55726852018-05-07 15:20:102854 days ago1525706410IN
0x37882CA8...f116E2433
10.29739303 ETH0.00012636
Sweep49410052018-01-20 14:25:462961 days ago1516458346IN
0x37882CA8...f116E2433
0 ETH0.0045051390
Transfer49409702018-01-20 14:17:422961 days ago1516457862IN
0x37882CA8...f116E2433
3.15970279 ETH0.0021051100
Sweep47898432017-12-24 18:13:002988 days ago1514139180IN
0x37882CA8...f116E2433
0 ETH0.002552951
Transfer47898112017-12-24 18:07:272988 days ago1514138847IN
0x37882CA8...f116E2433
1.02562918 ETH0.0016840880
Sweep47755232017-12-22 7:34:242990 days ago1513928064IN
0x37882CA8...f116E2433
0 ETH0.0029995860
Transfer47753742017-12-22 6:52:412990 days ago1513925561IN
0x37882CA8...f116E2433
0.79287166 ETH0.0016840880
Sweep47654652017-12-20 12:12:412992 days ago1513771961IN
0x37882CA8...f116E2433
0 ETH0.0026630353.2
Transfer47654282017-12-20 12:01:032992 days ago1513771263IN
0x37882CA8...f116E2433
1.05117269 ETH0.0016840880
Sweep47523812017-12-18 4:38:362994 days ago1513571916IN
0x37882CA8...f116E2433
0 ETH0.002552951
Transfer47522932017-12-18 4:19:132994 days ago1513570753IN
0x37882CA8...f116E2433
1.13240279 ETH0.0016840880
Sweep47380892017-12-15 17:27:022997 days ago1513358822IN
0x37882CA8...f116E2433
0 ETH0.002552951
Transfer47380462017-12-15 17:16:342997 days ago1513358194IN
0x37882CA8...f116E2433
1.08132047 ETH0.0016840880
Sweep47247682017-12-13 9:25:132999 days ago1513157113IN
0x37882CA8...f116E2433
0 ETH0.002552951
Transfer47247402017-12-13 9:16:332999 days ago1513156593IN
0x37882CA8...f116E2433
0.63558631 ETH0.0016840880
Sweep47171112017-12-12 1:16:423000 days ago1513041402IN
0x37882CA8...f116E2433
0 ETH0.002552951
Transfer47170692017-12-12 1:05:073000 days ago1513040707IN
0x37882CA8...f116E2433
1.07715673 ETH0.0016840880
Sweep47051392017-12-09 23:23:343003 days ago1512861814IN
0x37882CA8...f116E2433
0 ETH0.0038543877
Transfer47050932017-12-09 23:14:313003 days ago1512861271IN
0x37882CA8...f116E2433
1.06443876 ETH0.0016840880
Sweep46933402017-12-07 22:46:383005 days ago1512686798IN
0x37882CA8...f116E2433
0 ETH0.0042047884
Transfer46933062017-12-07 22:38:233005 days ago1512686303IN
0x37882CA8...f116E2433
1.00958111 ETH0.0016840880
Sweep46826052017-12-06 0:55:303006 days ago1512521730IN
0x37882CA8...f116E2433
0 ETH0.002552951
Transfer46825142017-12-06 0:31:243006 days ago1512520284IN
0x37882CA8...f116E2433
1.01700483 ETH0.0008420440
Sweep46711852017-12-04 0:12:153008 days ago1512346335IN
0x37882CA8...f116E2433
0 ETH0.0010011420
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer55727362018-05-07 15:31:142854 days ago1525707074
0x37882CA8...f116E2433
10.29739303 ETH
Transfer49410052018-01-20 14:25:462961 days ago1516458346
0x37882CA8...f116E2433
3.15970279 ETH
Transfer47898432017-12-24 18:13:002988 days ago1514139180
0x37882CA8...f116E2433
1.02562918 ETH
Transfer47755232017-12-22 7:34:242990 days ago1513928064
0x37882CA8...f116E2433
0.79287166 ETH
Transfer47654652017-12-20 12:12:412992 days ago1513771961
0x37882CA8...f116E2433
1.05117269 ETH
Transfer47523812017-12-18 4:38:362994 days ago1513571916
0x37882CA8...f116E2433
1.13240279 ETH
Transfer47380892017-12-15 17:27:022997 days ago1513358822
0x37882CA8...f116E2433
1.08132047 ETH
Transfer47247682017-12-13 9:25:132999 days ago1513157113
0x37882CA8...f116E2433
0.63558631 ETH
Transfer47171112017-12-12 1:16:423000 days ago1513041402
0x37882CA8...f116E2433
1.07715673 ETH
Transfer47051392017-12-09 23:23:343003 days ago1512861814
0x37882CA8...f116E2433
1.06443876 ETH
Transfer46933402017-12-07 22:46:383005 days ago1512686798
0x37882CA8...f116E2433
1.00958111 ETH
Transfer46826052017-12-06 0:55:303006 days ago1512521730
0x37882CA8...f116E2433
1.01700483 ETH
Transfer46711852017-12-04 0:12:153008 days ago1512346335
0x37882CA8...f116E2433
1.0603559 ETH
Transfer46576252017-12-01 18:25:103011 days ago1512152710
0x37882CA8...f116E2433
1.05997073 ETH
Transfer46449342017-11-29 16:35:193013 days ago1511973319
0x37882CA8...f116E2433
1.0819569 ETH
Transfer46314892017-11-27 11:47:343015 days ago1511783254
0x37882CA8...f116E2433
0.99147821 ETH
Transfer46187522017-11-25 10:11:113017 days ago1511604671
0x37882CA8...f116E2433
1.004882 ETH
Transfer46056912017-11-23 7:36:543019 days ago1511422614
0x37882CA8...f116E2433
1.11745015 ETH
Transfer45913852017-11-21 0:28:403021 days ago1511224120
0x37882CA8...f116E2433
1.21548688 ETH
Transfer45762872017-11-18 14:12:563024 days ago1511014376
0x37882CA8...f116E2433
1.4234297 ETH
Transfer45562402017-11-15 8:27:013027 days ago1510734421
0x37882CA8...f116E2433
1.15978223 ETH
Transfer45232792017-11-10 1:39:293032 days ago1510277969
0x37882CA8...f116E2433
0.31593264 ETH
Transfer45175162017-11-09 3:15:263033 days ago1510197326
0x37882CA8...f116E2433
0.86554825 ETH
Transfer45043682017-11-07 0:41:333035 days ago1510015293
0x37882CA8...f116E2433
0.70880843 ETH
Transfer44936162017-11-05 7:04:163037 days ago1509865456
0x37882CA8...f116E2433
0.9066673 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.