ETH Price: $1,960.10 (-1.32%)

Contract

0xB38F960D202efFb72C2Eb237664E6ef191A8FAEb
 

Overview

ETH Balance

0.031665633882802181 ETH

Eth Value

$62.07 (@ $1,960.10/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer65970762018-10-28 4:05:102688 days ago1540699510IN
0xB38F960D...191A8FAEb
0.03166563 ETH0.000021051
Sweep65542702018-10-21 4:12:082695 days ago1540095128IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer65542372018-10-21 4:02:212695 days ago1540094541IN
0xB38F960D...191A8FAEb
0.24570513 ETH0.000021051
Sweep65113182018-10-14 4:00:152702 days ago1539489615IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer65113032018-10-14 3:55:592702 days ago1539489359IN
0xB38F960D...191A8FAEb
0.28046286 ETH0.000021051
Sweep64681052018-10-07 3:56:072709 days ago1538884567IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer64680842018-10-07 3:49:232709 days ago1538884163IN
0xB38F960D...191A8FAEb
0.27241522 ETH0.000021051
Sweep64287022018-09-30 17:54:272715 days ago1538330067IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer64286782018-09-30 17:49:402715 days ago1538329780IN
0xB38F960D...191A8FAEb
5.221272 ETH0.0010525550
Sweep64251942018-09-30 3:54:182716 days ago1538279658IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer64251662018-09-30 3:48:182716 days ago1538279298IN
0xB38F960D...191A8FAEb
0.27895731 ETH0.000021051
Sweep63824542018-09-23 3:51:192723 days ago1537674679IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer63824312018-09-23 3:44:242723 days ago1537674264IN
0xB38F960D...191A8FAEb
0.25847602 ETH0.000021051
Sweep63400612018-09-16 3:49:442730 days ago1537069784IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer63400112018-09-16 3:38:362730 days ago1537069116IN
0xB38F960D...191A8FAEb
0.20177181 ETH0.000021051
Sweep62978972018-09-09 3:46:042737 days ago1536464764IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer62978762018-09-09 3:40:212737 days ago1536464421IN
0xB38F960D...191A8FAEb
0.17647595 ETH0.000021051
Sweep62745932018-09-05 5:41:472741 days ago1536126107IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer62745722018-09-05 5:37:032741 days ago1536125823IN
0xB38F960D...191A8FAEb
2.60763636 ETH0.0010525550
Sweep62561512018-09-02 3:40:242744 days ago1535859624IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer62561292018-09-02 3:32:442744 days ago1535859164IN
0xB38F960D...191A8FAEb
0.17579373 ETH0.000021051
Sweep62147762018-08-26 3:41:282751 days ago1535254888IN
0xB38F960D...191A8FAEb
0 ETH0.0025028550
Transfer62147212018-08-26 3:29:212751 days ago1535254161IN
0xB38F960D...191A8FAEb
0.17254941 ETH0.000021051
Sweep61979492018-08-23 7:25:182754 days ago1535009118IN
0xB38F960D...191A8FAEb
0 ETH0.0024996550
Transfer61979202018-08-23 7:18:442754 days ago1535008724IN
0xB38F960D...191A8FAEb
8 ETH0.0010525550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer65542702018-10-21 4:12:082695 days ago1540095128
0xB38F960D...191A8FAEb
0.24570514 ETH
Transfer65113182018-10-14 4:00:152702 days ago1539489615
0xB38F960D...191A8FAEb
0.28046287 ETH
Transfer64681052018-10-07 3:56:072709 days ago1538884567
0xB38F960D...191A8FAEb
0.27241522 ETH
Transfer64287022018-09-30 17:54:272715 days ago1538330067
0xB38F960D...191A8FAEb
5.221272 ETH
Transfer64251942018-09-30 3:54:182716 days ago1538279658
0xB38F960D...191A8FAEb
0.27895732 ETH
Transfer63824542018-09-23 3:51:192723 days ago1537674679
0xB38F960D...191A8FAEb
0.25847602 ETH
Transfer63400612018-09-16 3:49:442730 days ago1537069784
0xB38F960D...191A8FAEb
0.20177182 ETH
Transfer62978972018-09-09 3:46:042737 days ago1536464764
0xB38F960D...191A8FAEb
0.17647596 ETH
Transfer62745932018-09-05 5:41:472741 days ago1536126107
0xB38F960D...191A8FAEb
2.60763636 ETH
Transfer62561512018-09-02 3:40:242744 days ago1535859624
0xB38F960D...191A8FAEb
0.17579374 ETH
Transfer62147762018-08-26 3:41:282751 days ago1535254888
0xB38F960D...191A8FAEb
0.17254942 ETH
Transfer61979492018-08-23 7:25:182754 days ago1535009118
0xB38F960D...191A8FAEb
8 ETH
Transfer61733042018-08-19 3:47:292758 days ago1534650449
0xB38F960D...191A8FAEb
0.16978026 ETH
Transfer61318972018-08-12 3:22:472765 days ago1534044167
0xB38F960D...191A8FAEb
0.16606814 ETH
Transfer60904292018-08-05 3:17:362772 days ago1533439056
0xB38F960D...191A8FAEb
0.50008401 ETH
Transfer60489152018-07-29 3:15:082779 days ago1532834108
0xB38F960D...191A8FAEb
0.93166716 ETH
Transfer60076242018-07-22 3:16:592786 days ago1532229419
0xB38F960D...191A8FAEb
0.95757697 ETH
Transfer59847862018-07-18 5:56:222790 days ago1531893382
0xB38F960D...191A8FAEb
7.01899563 ETH
Transfer59663962018-07-15 3:09:532793 days ago1531624193
0xB38F960D...191A8FAEb
0.97021765 ETH
Transfer59250932018-07-08 3:07:202800 days ago1531019240
0xB38F960D...191A8FAEb
1.00003438 ETH
Transfer58851972018-07-01 7:11:552807 days ago1530429115
0xB38F960D...191A8FAEb
0.92089342 ETH
Transfer58527492018-06-25 16:34:022812 days ago1529944442
0xB38F960D...191A8FAEb
4.14034146 ETH
Transfer58447192018-06-24 7:09:502814 days ago1529824190
0xB38F960D...191A8FAEb
0.86146672 ETH
Transfer58035552018-06-17 7:05:122821 days ago1529219112
0xB38F960D...191A8FAEb
0.94385278 ETH
Transfer57626412018-06-10 4:06:062828 days ago1528603566
0xB38F960D...191A8FAEb
3.0548054 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.