ETH Price: $1,978.66 (+6.07%)
 

Overview

ETH Balance

0.013112340238276728 ETH

Eth Value

$25.94 (@ $1,978.66/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer69176072018-12-19 23:31:542628 days ago1545262314IN
0x33C9130F...8A84fC2c2
0.01311233 ETH0.000021051
Sweep68757332018-12-12 23:35:472635 days ago1544657747IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68757122018-12-12 23:30:222635 days ago1544657422IN
0x33C9130F...8A84fC2c2
0.05103283 ETH0.000021051
Sweep68676372018-12-11 15:35:572636 days ago1544542557IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68676192018-12-11 15:30:292636 days ago1544542229IN
0x33C9130F...8A84fC2c2
0.05104571 ETH0.000021051
Sweep68615982018-12-10 15:30:102637 days ago1544455810IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68615702018-12-10 15:24:312637 days ago1544455471IN
0x33C9130F...8A84fC2c2
0.05123218 ETH0.000021051
Sweep68553882018-12-09 15:14:562638 days ago1544368496IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68553722018-12-09 15:11:282638 days ago1544368288IN
0x33C9130F...8A84fC2c2
0.05122396 ETH0.000021051
Sweep68491122018-12-08 14:35:252639 days ago1544279725IN
0x33C9130F...8A84fC2c2
0 ETH0.0024964550
Transfer68490982018-12-08 14:31:162639 days ago1544279476IN
0x33C9130F...8A84fC2c2
0.05100194 ETH0.000021051
Sweep68428832018-12-07 13:38:202640 days ago1544189900IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68428692018-12-07 13:34:452640 days ago1544189685IN
0x33C9130F...8A84fC2c2
0.051033 ETH0.000021051
Sweep68362952018-12-06 11:20:182641 days ago1544095218IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68362792018-12-06 11:16:032641 days ago1544094963IN
0x33C9130F...8A84fC2c2
0.05111158 ETH0.000021051
Sweep68302142018-12-05 11:06:112642 days ago1544007971IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68301982018-12-05 11:01:532642 days ago1544007713IN
0x33C9130F...8A84fC2c2
0.05112819 ETH0.000021051
Sweep68237212018-12-04 9:17:092644 days ago1543915029IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68237052018-12-04 9:12:132644 days ago1543914733IN
0x33C9130F...8A84fC2c2
0.05103664 ETH0.000021051
Sweep68166572018-12-03 5:17:182645 days ago1543814238IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68166402018-12-03 5:12:342645 days ago1543813954IN
0x33C9130F...8A84fC2c2
0.05116238 ETH0.000021051
Sweep68098802018-12-02 2:15:272646 days ago1543716927IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68098612018-12-02 2:11:232646 days ago1543716683IN
0x33C9130F...8A84fC2c2
0.05111542 ETH0.000021051
Sweep68030722018-11-30 23:16:272647 days ago1543619787IN
0x33C9130F...8A84fC2c2
0 ETH0.0024996550
Transfer68030472018-11-30 23:10:162647 days ago1543619416IN
0x33C9130F...8A84fC2c2
0.05118162 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-68757332018-12-12 23:35:472635 days ago1544657747
0x33C9130F...8A84fC2c2
0.05103284 ETH
-68676372018-12-11 15:35:572636 days ago1544542557
0x33C9130F...8A84fC2c2
0.05104571 ETH
-68615982018-12-10 15:30:102637 days ago1544455810
0x33C9130F...8A84fC2c2
0.05123218 ETH
-68553882018-12-09 15:14:562638 days ago1544368496
0x33C9130F...8A84fC2c2
0.05122396 ETH
-68491122018-12-08 14:35:252639 days ago1544279725
0x33C9130F...8A84fC2c2
0.05100195 ETH
-68428832018-12-07 13:38:202640 days ago1544189900
0x33C9130F...8A84fC2c2
0.051033 ETH
-68362952018-12-06 11:20:182641 days ago1544095218
0x33C9130F...8A84fC2c2
0.05111159 ETH
-68302142018-12-05 11:06:112642 days ago1544007971
0x33C9130F...8A84fC2c2
0.05112819 ETH
-68237212018-12-04 9:17:092644 days ago1543915029
0x33C9130F...8A84fC2c2
0.05103665 ETH
-68166572018-12-03 5:17:182645 days ago1543814238
0x33C9130F...8A84fC2c2
0.05116239 ETH
-68098802018-12-02 2:15:272646 days ago1543716927
0x33C9130F...8A84fC2c2
0.05111542 ETH
-68030722018-11-30 23:16:272647 days ago1543619787
0x33C9130F...8A84fC2c2
0.05118162 ETH
Transfer67965692018-11-29 21:28:022648 days ago1543526882
0x33C9130F...8A84fC2c2
0.05116607 ETH
Transfer67901892018-11-28 20:28:442649 days ago1543436924
0x33C9130F...8A84fC2c2
0.05106049 ETH
Transfer67838862018-11-27 19:30:142650 days ago1543347014
0x33C9130F...8A84fC2c2
0.05124182 ETH
Transfer67773422018-11-26 17:13:142651 days ago1543252394
0x33C9130F...8A84fC2c2
0.05100028 ETH
Transfer67706932018-11-25 15:04:412652 days ago1543158281
0x33C9130F...8A84fC2c2
0.05101904 ETH
Transfer67636162018-11-24 11:16:142653 days ago1543058174
0x33C9130F...8A84fC2c2
0.05135799 ETH
Transfer67565432018-11-23 7:36:382655 days ago1542958598
0x33C9130F...8A84fC2c2
0.05103866 ETH
Transfer67494832018-11-22 3:50:322656 days ago1542858632
0x33C9130F...8A84fC2c2
0.05104314 ETH
Transfer67420352018-11-20 22:32:552657 days ago1542753175
0x33C9130F...8A84fC2c2
0.0512498 ETH
Transfer67334352018-11-19 12:15:092658 days ago1542629709
0x33C9130F...8A84fC2c2
0.05105286 ETH
Transfer67255722018-11-18 5:28:382660 days ago1542518918
0x33C9130F...8A84fC2c2
0.05100274 ETH
Transfer67176702018-11-16 22:24:092661 days ago1542407049
0x33C9130F...8A84fC2c2
0.05115498 ETH
Transfer67101122018-11-15 16:44:452662 days ago1542300285
0x33C9130F...8A84fC2c2
0.05107942 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.