ETH Price: $1,886.58 (+1.42%)
 

Overview

ETH Balance

0.005925385262344164 ETH

Eth Value

$11.18 (@ $1,886.58/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer156705292022-10-03 22:12:47891 days ago1664835167IN
0x02d9E4F5...c6F9E4D73
0.00592537 ETH0.0002835613.47036078
Sweep59662622018-07-15 2:41:182433 days ago1531622478IN
0x02d9E4F5...c6F9E4D73
0 ETH0.0049993100
Transfer59662372018-07-15 2:35:182433 days ago1531622118IN
0x02d9E4F5...c6F9E4D73
0.02323308 ETH0.000021051
Transfer59249282018-07-08 2:23:562440 days ago1531016636IN
0x02d9E4F5...c6F9E4D73
0.02697223 ETH0.000021051
Sweep58840822018-07-01 2:29:532447 days ago1530412193IN
0x02d9E4F5...c6F9E4D73
0 ETH0.0024996550
Transfer58840412018-07-01 2:20:082447 days ago1530411608IN
0x02d9E4F5...c6F9E4D73
0.02422999 ETH0.000021051
Transfer58435052018-06-24 2:13:372454 days ago1529806417IN
0x02d9E4F5...c6F9E4D73
0.025802 ETH0.000021051
Sweep58023792018-06-17 2:14:292461 days ago1529201669IN
0x02d9E4F5...c6F9E4D73
0 ETH0.0024996550
Transfer58023602018-06-17 2:08:242461 days ago1529201304IN
0x02d9E4F5...c6F9E4D73
0.0220051 ETH0.000021051
Transfer57621572018-06-10 2:05:452468 days ago1528596345IN
0x02d9E4F5...c6F9E4D73
0.02133435 ETH0.000021051
Transfer57226922018-06-03 2:01:432475 days ago1527991303IN
0x02d9E4F5...c6F9E4D73
0.02085095 ETH0.000021051
Sweep56831982018-05-27 2:02:092482 days ago1527386529IN
0x02d9E4F5...c6F9E4D73
0 ETH0.0024996550
Transfer56831752018-05-27 1:55:522482 days ago1527386152IN
0x02d9E4F5...c6F9E4D73
0.01000347 ETH0.000021051
Transfer56233272018-05-16 11:28:402493 days ago1526470120IN
0x02d9E4F5...c6F9E4D73
0.02101232 ETH0.000021051
Transfer55832852018-05-09 11:26:492500 days ago1525865209IN
0x02d9E4F5...c6F9E4D73
0.01091816 ETH0.000021051
Transfer55431852018-05-02 11:21:202507 days ago1525260080IN
0x02d9E4F5...c6F9E4D73
0.01074901 ETH0.000021051
Sweep55029582018-04-25 11:20:262514 days ago1524655226IN
0x02d9E4F5...c6F9E4D73
0 ETH0.0024996550
Transfer55029372018-04-25 11:16:062514 days ago1524654966IN
0x02d9E4F5...c6F9E4D73
0.0107991 ETH0.000021051
Transfer54622812018-04-18 11:15:592521 days ago1524050159IN
0x02d9E4F5...c6F9E4D73
0.01000175 ETH0.000021051
Transfer54178942018-04-10 22:54:142528 days ago1523400854IN
0x02d9E4F5...c6F9E4D73
0.01000063 ETH0.000021051
Transfer53678152018-04-02 15:43:182536 days ago1522683798IN
0x02d9E4F5...c6F9E4D73
0.01000692 ETH0.000021051
Transfer52933932018-03-21 5:17:152549 days ago1521609435IN
0x02d9E4F5...c6F9E4D73
0.01971394 ETH0.000021051
Sweep52520352018-03-14 5:24:312556 days ago1521005071IN
0x02d9E4F5...c6F9E4D73
0 ETH0.0024996550
Transfer52519972018-03-14 5:15:402556 days ago1521004540IN
0x02d9E4F5...c6F9E4D73
0.01704341 ETH0.000021051
Transfer52107802018-03-07 5:10:192563 days ago1520399419IN
0x02d9E4F5...c6F9E4D73
0.01410053 ETH0.000021051
View all transactions

Latest 14 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer59662622018-07-15 2:41:182433 days ago1531622478
0x02d9E4F5...c6F9E4D73
0.05020532 ETH
Transfer58840822018-07-01 2:29:532447 days ago1530412193
0x02d9E4F5...c6F9E4D73
0.05003199 ETH
Transfer58023792018-06-17 2:14:292461 days ago1529201669
0x02d9E4F5...c6F9E4D73
0.06419043 ETH
Transfer56831982018-05-27 2:02:092482 days ago1527386529
0x02d9E4F5...c6F9E4D73
0.05268298 ETH
Transfer55029582018-04-25 11:20:262514 days ago1524655226
0x02d9E4F5...c6F9E4D73
0.06052236 ETH
Transfer52520352018-03-14 5:24:312556 days ago1521005071
0x02d9E4F5...c6F9E4D73
0.06529231 ETH
Transfer50869592018-02-14 5:07:312584 days ago1518584851
0x02d9E4F5...c6F9E4D73
0.06355091 ETH
Transfer50037772018-01-31 4:58:502598 days ago1517374730
0x02d9E4F5...c6F9E4D73
0.07573383 ETH
Transfer49198332018-01-16 20:25:512612 days ago1516134351
0x02d9E4F5...c6F9E4D73
0.0597016 ETH
Transfer48587582018-01-05 15:17:532623 days ago1515165473
0x02d9E4F5...c6F9E4D73
0.25223393 ETH
Transfer47581452017-12-19 4:56:232641 days ago1513659383
0x02d9E4F5...c6F9E4D73
0.23749302 ETH
Transfer45048572017-11-07 2:37:362683 days ago1510022256
0x02d9E4F5...c6F9E4D73
0.21523428 ETH
Transfer41750292017-08-18 22:23:332763 days ago1503095013
0x02d9E4F5...c6F9E4D73
0.45891246 ETH
Transfer41739412017-08-18 16:09:242763 days ago1503072564  Contract Creation0 ETH
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.