ETH Price: $1,931.32 (-4.48%)
 

Overview

ETH Balance

0.000000009 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep75275472019-04-08 12:52:412517 days ago1554727961IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer75275272019-04-08 12:48:332517 days ago1554727713IN
0xC8ece913...eD35883a5
0.05046538 ETH0.000021051
Sweep75114122019-04-06 0:47:592520 days ago1554511679IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer75113882019-04-06 0:42:272520 days ago1554511347IN
0xC8ece913...eD35883a5
0.05076623 ETH0.000021051
Sweep74930342019-04-03 3:47:532522 days ago1554263273IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer74930142019-04-03 3:42:092522 days ago1554262929IN
0xC8ece913...eD35883a5
0.05018293 ETH0.000021051
Sweep74768392019-03-31 15:09:062525 days ago1554044946IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer74768252019-03-31 15:05:312525 days ago1554044731IN
0xC8ece913...eD35883a5
0.05008721 ETH0.000021051
Sweep74599292019-03-28 23:23:452528 days ago1553815425IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer74599142019-03-28 23:20:452528 days ago1553815245IN
0xC8ece913...eD35883a5
0.05127281 ETH0.000021051
Sweep74249782019-03-23 12:34:312533 days ago1553344471IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer74249572019-03-23 12:31:072533 days ago1553344267IN
0xC8ece913...eD35883a5
0.05025647 ETH0.000021051
Sweep74047982019-03-20 8:58:522536 days ago1553072332IN
0xC8ece913...eD35883a5
0 ETH0.0024964550
Transfer74047812019-03-20 8:54:482536 days ago1553072088IN
0xC8ece913...eD35883a5
0.05045504 ETH0.000021051
Sweep73884242019-03-17 19:35:582539 days ago1552851358IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer73884072019-03-17 19:30:552539 days ago1552851055IN
0xC8ece913...eD35883a5
0.05005942 ETH0.000021051
Sweep73538272019-03-12 10:44:172544 days ago1552387457IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer73538082019-03-12 10:39:042544 days ago1552387144IN
0xC8ece913...eD35883a5
0.05014654 ETH0.000021051
Sweep73364762019-03-09 17:57:362547 days ago1552154256IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer73364602019-03-09 17:54:222547 days ago1552154062IN
0xC8ece913...eD35883a5
0.05020328 ETH0.000021051
Sweep73171272019-03-06 17:28:452550 days ago1551893325IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer73171112019-03-06 17:24:192550 days ago1551893059IN
0xC8ece913...eD35883a5
0.05011798 ETH0.000021051
Sweep72979152019-03-03 17:34:112553 days ago1551634451IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
Transfer72979022019-03-03 17:31:312553 days ago1551634291IN
0xC8ece913...eD35883a5
0.05024852 ETH0.000021051
Sweep72819372019-03-01 4:49:522555 days ago1551415792IN
0xC8ece913...eD35883a5
0 ETH0.0024996550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-75275472019-04-08 12:52:412517 days ago1554727961
0xC8ece913...eD35883a5
0.05046538 ETH
-75114122019-04-06 0:47:592520 days ago1554511679
0xC8ece913...eD35883a5
0.05076623 ETH
-74930342019-04-03 3:47:532522 days ago1554263273
0xC8ece913...eD35883a5
0.05018294 ETH
-74768392019-03-31 15:09:062525 days ago1554044946
0xC8ece913...eD35883a5
0.05008721 ETH
-74599292019-03-28 23:23:452528 days ago1553815425
0xC8ece913...eD35883a5
0.05127282 ETH
-74249782019-03-23 12:34:312533 days ago1553344471
0xC8ece913...eD35883a5
0.05025647 ETH
-74047982019-03-20 8:58:522536 days ago1553072332
0xC8ece913...eD35883a5
0.05045504 ETH
-73884242019-03-17 19:35:582539 days ago1552851358
0xC8ece913...eD35883a5
0.05005942 ETH
-73538272019-03-12 10:44:172544 days ago1552387457
0xC8ece913...eD35883a5
0.05014655 ETH
-73364762019-03-09 17:57:362547 days ago1552154256
0xC8ece913...eD35883a5
0.05020328 ETH
-73171272019-03-06 17:28:452550 days ago1551893325
0xC8ece913...eD35883a5
0.05011799 ETH
-72979152019-03-03 17:34:112553 days ago1551634451
0xC8ece913...eD35883a5
0.05024852 ETH
-72819372019-03-01 4:49:522555 days ago1551415792
0xC8ece913...eD35883a5
0.05074382 ETH
-72653062019-02-25 9:04:222559 days ago1551085462
0xC8ece913...eD35883a5
0.05014947 ETH
-72502602019-02-21 20:33:592563 days ago1550781239
0xC8ece913...eD35883a5
0.05103147 ETH
-72355552019-02-18 9:37:332566 days ago1550482653
0xC8ece913...eD35883a5
0.0500477 ETH
-72204912019-02-14 19:12:262570 days ago1550171546
0xC8ece913...eD35883a5
0.05036117 ETH
-72079982019-02-11 19:35:492573 days ago1549913749
0xC8ece913...eD35883a5
0.05018891 ETH
-71918002019-02-08 6:53:082576 days ago1549608788
0xC8ece913...eD35883a5
0.05055476 ETH
-71796772019-02-05 19:21:432579 days ago1549394503
0xC8ece913...eD35883a5
0.05015558 ETH
-71685952019-02-03 13:21:322581 days ago1549200092
0xC8ece913...eD35883a5
0.05030085 ETH
-71573612019-02-01 6:01:522583 days ago1549000912
0xC8ece913...eD35883a5
0.05001832 ETH
-71415032019-01-29 0:35:452587 days ago1548722145
0xC8ece913...eD35883a5
0.05140688 ETH
-71321382019-01-27 3:05:322588 days ago1548558332
0xC8ece913...eD35883a5
0.05010701 ETH
-71203932019-01-24 19:33:172591 days ago1548358397
0xC8ece913...eD35883a5
0.05013862 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.