ETH Price: $2,327.51 (-4.34%)

Contract

0x287dA03b576778c9f3F66c7490F68501D931fCd8
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep70711692019-01-15 15:55:012234 days ago1547567701IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer70711512019-01-15 15:47:102234 days ago1547567230IN
0x287dA03b...1D931fCd8
0.08 ETH0.0008420440
Sweep70706532019-01-15 13:42:392235 days ago1547559759IN
0x287dA03b...1D931fCd8
0 ETH0.0024964550
Transfer70706342019-01-15 13:39:262235 days ago1547559566IN
0x287dA03b...1D931fCd8
0.07 ETH0.0008420440
Sweep70210352019-01-06 16:46:042243 days ago1546793164IN
0x287dA03b...1D931fCd8
0 ETH0.0024964550
Transfer70210122019-01-06 16:38:552243 days ago1546792735IN
0x287dA03b...1D931fCd8
0.07 ETH0.0008420440
Sweep70098192019-01-04 16:40:172245 days ago1546620017IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer70098022019-01-04 16:34:432245 days ago1546619683IN
0x287dA03b...1D931fCd8
0.08 ETH0.0008420440
Transfer70098022019-01-04 16:34:432245 days ago1546619683IN
0x287dA03b...1D931fCd8
0.07 ETH0.0008420440
Sweep69971372019-01-02 10:46:082248 days ago1546425968IN
0x287dA03b...1D931fCd8
0 ETH0.0024964550
Transfer69971222019-01-02 10:41:592248 days ago1546425719IN
0x287dA03b...1D931fCd8
0.07 ETH0.0008420440
Sweep69917222019-01-01 13:02:352249 days ago1546347755IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer69917102019-01-01 12:59:102249 days ago1546347550IN
0x287dA03b...1D931fCd8
0.08 ETH0.0008420440
Sweep69828232018-12-31 0:27:302250 days ago1546216050IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer69828172018-12-31 0:26:432250 days ago1546216003IN
0x287dA03b...1D931fCd8
0.07 ETH0.0008420440
Transfer69828022018-12-31 0:22:592250 days ago1546215779IN
0x287dA03b...1D931fCd8
0.08 ETH0.0008420440
Sweep69742082018-12-29 13:51:032252 days ago1546091463IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer69741822018-12-29 13:46:482252 days ago1546091208IN
0x287dA03b...1D931fCd8
0.08 ETH0.0008420440
Sweep69435642018-12-24 9:39:252257 days ago1545644365IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer69435422018-12-24 9:35:582257 days ago1545644158IN
0x287dA03b...1D931fCd8
0.08 ETH0.0003368116
Sweep69264312018-12-21 11:40:222260 days ago1545392422IN
0x287dA03b...1D931fCd8
0 ETH0.0024964550
Transfer69264132018-12-21 11:35:572260 days ago1545392157IN
0x287dA03b...1D931fCd8
0.07 ETH0.0008420440
Sweep69159382018-12-19 16:50:342261 days ago1545238234IN
0x287dA03b...1D931fCd8
0 ETH0.0024996550
Transfer69159222018-12-19 16:47:132261 days ago1545238033IN
0x287dA03b...1D931fCd8
0.06 ETH0.0008420440
Transfer68988522018-12-16 18:58:102264 days ago1544986690IN
0x287dA03b...1D931fCd8
0.04 ETH0.0010525550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
70711692019-01-15 15:55:012234 days ago1547567701
0x287dA03b...1D931fCd8
0.08 ETH
70706532019-01-15 13:42:392235 days ago1547559759
0x287dA03b...1D931fCd8
0.07 ETH
70210352019-01-06 16:46:042243 days ago1546793164
0x287dA03b...1D931fCd8
0.07 ETH
70098192019-01-04 16:40:172245 days ago1546620017
0x287dA03b...1D931fCd8
0.15 ETH
69971372019-01-02 10:46:082248 days ago1546425968
0x287dA03b...1D931fCd8
0.07 ETH
69917222019-01-01 13:02:352249 days ago1546347755
0x287dA03b...1D931fCd8
0.08 ETH
69828232018-12-31 0:27:302250 days ago1546216050
0x287dA03b...1D931fCd8
0.15 ETH
69742082018-12-29 13:51:032252 days ago1546091463
0x287dA03b...1D931fCd8
0.08 ETH
69435642018-12-24 9:39:252257 days ago1545644365
0x287dA03b...1D931fCd8
0.08 ETH
69264312018-12-21 11:40:222260 days ago1545392422
0x287dA03b...1D931fCd8
0.07 ETH
69159382018-12-19 16:50:342261 days ago1545238234
0x287dA03b...1D931fCd8
0.1 ETH
68871952018-12-14 20:55:042266 days ago1544820904
0x287dA03b...1D931fCd8
0.07 ETH
68783052018-12-13 9:50:482268 days ago1544694648
0x287dA03b...1D931fCd8
0.104 ETH
68003752018-11-30 12:33:522281 days ago1543581232
0x287dA03b...1D931fCd8
0.05 ETH
67573062018-11-23 10:35:112288 days ago1542969311
0x287dA03b...1D931fCd8
0.06 ETH
67334952018-11-19 12:29:252292 days ago1542630565
0x287dA03b...1D931fCd8
0.054 ETH
67210452018-11-17 11:37:482294 days ago1542454668
0x287dA03b...1D931fCd8
0.05 ETH
67167372018-11-16 18:43:022294 days ago1542393782
0x287dA03b...1D931fCd8
0.084 ETH
66935112018-11-12 23:22:112298 days ago1542064931
0x287dA03b...1D931fCd8
0.06 ETH
66874082018-11-11 23:34:122299 days ago1541979252
0x287dA03b...1D931fCd8
0.06 ETH
66751092018-11-09 23:21:072301 days ago1541805667
0x287dA03b...1D931fCd8
0.27097119 ETH
66731842018-11-09 15:41:212301 days ago1541778081
0x287dA03b...1D931fCd8
0.06 ETH
66684132018-11-08 20:57:422302 days ago1541710662
0x287dA03b...1D931fCd8
0.06 ETH
66531322018-11-06 8:48:342305 days ago1541494114
0x287dA03b...1D931fCd8
0.064 ETH
66489362018-11-05 16:20:002305 days ago1541434800
0x287dA03b...1D931fCd8
0.068 ETH
View All Internal Transactions
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
/**
 *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"}]

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.