ETH Price: $1,983.06 (-1.83%)
 

Overview

ETH Balance

0.000000006489154605 ETH

Eth Value

Less Than $0.01 (@ $1,983.06/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep56908792018-05-28 10:33:122836 days ago1527503592IN
0x8faeE968...C522Fb38E
0 ETH0.0024996550
Transfer56907352018-05-28 9:56:082836 days ago1527501368IN
0x8faeE968...C522Fb38E
0.02028564 ETH0.000021051
Transfer56512322018-05-21 9:50:592843 days ago1526896259IN
0x8faeE968...C522Fb38E
0.02466553 ETH0.000021051
Transfer56115562018-05-14 9:44:302850 days ago1526291070IN
0x8faeE968...C522Fb38E
0.02388261 ETH0.000021051
Sweep55713742018-05-07 9:54:272857 days ago1525686867IN
0x8faeE968...C522Fb38E
0 ETH0.0024996550
Transfer55713222018-05-07 9:40:362857 days ago1525686036IN
0x8faeE968...C522Fb38E
0.02525761 ETH0.000021051
Transfer55314162018-04-30 9:36:072864 days ago1525080967IN
0x8faeE968...C522Fb38E
0.03672143 ETH0.000021051
Sweep54910342018-04-23 9:41:512871 days ago1524476511IN
0x8faeE968...C522Fb38E
0 ETH0.0025028550
Transfer54910112018-04-23 9:34:502871 days ago1524476090IN
0x8faeE968...C522Fb38E
0.03956101 ETH0.000021051
Transfer54501512018-04-16 9:31:042878 days ago1523871064IN
0x8faeE968...C522Fb38E
0.03936568 ETH0.000021051
Sweep54084792018-04-09 9:35:052885 days ago1523266505IN
0x8faeE968...C522Fb38E
0 ETH0.0045051390
Transfer54084372018-04-09 9:27:072885 days ago1523266027IN
0x8faeE968...C522Fb38E
0.03899302 ETH0.000021051
Transfer53661992018-04-02 9:19:202892 days ago1522660760IN
0x8faeE968...C522Fb38E
0.03763232 ETH0.000021051
Sweep53244232018-03-26 9:24:162899 days ago1522056256IN
0x8faeE968...C522Fb38E
0 ETH0.0024996550
Transfer53243852018-03-26 9:14:252899 days ago1522055665IN
0x8faeE968...C522Fb38E
0.03594541 ETH0.000021051
Transfer52827002018-03-19 10:14:172906 days ago1521454457IN
0x8faeE968...C522Fb38E
0.0359626 ETH0.000021051
Sweep52415282018-03-12 10:18:042913 days ago1520849884IN
0x8faeE968...C522Fb38E
0 ETH0.0025028550
Transfer52414962018-03-12 10:10:162913 days ago1520849416IN
0x8faeE968...C522Fb38E
0.03316467 ETH0.000021051
Transfer52002172018-03-05 10:00:412920 days ago1520244041IN
0x8faeE968...C522Fb38E
0.03986726 ETH0.000021051
Sweep51589842018-02-26 10:09:432927 days ago1519639783IN
0x8faeE968...C522Fb38E
0 ETH0.0025028550
Transfer51589322018-02-26 9:55:542927 days ago1519638954IN
0x8faeE968...C522Fb38E
0.04208627 ETH0.000021051
Transfer51179502018-02-19 9:51:562934 days ago1519033916IN
0x8faeE968...C522Fb38E
0.0373397 ETH0.000021051
Sweep50762742018-02-12 9:54:252941 days ago1518429265IN
0x8faeE968...C522Fb38E
0 ETH0.0044993790
Transfer50762442018-02-12 9:47:462941 days ago1518428866IN
0x8faeE968...C522Fb38E
0.03507803 ETH0.000021051
Transfer50345122018-02-05 9:49:282948 days ago1517824168IN
0x8faeE968...C522Fb38E
0.03649383 ETH0.000021051
View all transactions

Latest 21 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer56908792018-05-28 10:33:122836 days ago1527503592
0x8faeE968...C522Fb38E
0.06883381 ETH
Transfer55713742018-05-07 9:54:272857 days ago1525686867
0x8faeE968...C522Fb38E
0.06197904 ETH
Transfer54910342018-04-23 9:41:512871 days ago1524476511
0x8faeE968...C522Fb38E
0.07892671 ETH
Transfer54084792018-04-09 9:35:052885 days ago1523266505
0x8faeE968...C522Fb38E
0.07662535 ETH
Transfer53244232018-03-26 9:24:162899 days ago1522056256
0x8faeE968...C522Fb38E
0.07190802 ETH
Transfer52415282018-03-12 10:18:042913 days ago1520849884
0x8faeE968...C522Fb38E
0.07303194 ETH
Transfer51589842018-02-26 10:09:432927 days ago1519639783
0x8faeE968...C522Fb38E
0.07942599 ETH
Transfer50762742018-02-12 9:54:252941 days ago1518429265
0x8faeE968...C522Fb38E
0.07157186 ETH
Transfer49931852018-01-29 9:46:432955 days ago1517219203
0x8faeE968...C522Fb38E
0.05137382 ETH
Transfer49515722018-01-22 9:47:062962 days ago1516614426
0x8faeE968...C522Fb38E
0.05750883 ETH
Transfer49119012018-01-15 9:41:412969 days ago1516009301
0x8faeE968...C522Fb38E
0.06326272 ETH
Transfer48737882018-01-08 9:33:152976 days ago1515403995
0x8faeE968...C522Fb38E
0.0678211 ETH
Transfer48350862018-01-01 9:27:262983 days ago1514798846
0x8faeE968...C522Fb38E
0.06694208 ETH
Transfer47936852017-12-25 9:18:442990 days ago1514193524
0x8faeE968...C522Fb38E
0.0690863 ETH
Transfer47535652017-12-18 9:21:522997 days ago1513588912
0x8faeE968...C522Fb38E
0.07708984 ETH
Transfer47131892017-12-11 8:51:253004 days ago1512982285
0x8faeE968...C522Fb38E
0.10596075 ETH
Transfer46626002017-12-02 13:52:313013 days ago1512222751
0x8faeE968...C522Fb38E
0.20000166 ETH
Transfer45385972017-11-12 12:02:333033 days ago1510488153
0x8faeE968...C522Fb38E
0.19905354 ETH
Transfer44347642017-10-26 19:09:413050 days ago1509044981
0x8faeE968...C522Fb38E
0.19900149 ETH
Transfer43466622017-10-08 4:03:123068 days ago1507435392
0x8faeE968...C522Fb38E
0.19901607 ETH
Transfer42680162017-09-13 2:35:053093 days ago1505270105  Contract Creation0 ETH
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.