ETH Price: $2,172.29 (+9.80%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep77466082019-05-12 16:06:262488 days ago1557677186IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer77465922019-05-12 16:02:212488 days ago1557676941IN
0x5f0f52Fb...D9f24e7a2
1 ETH0.0008630941
Sweep66574322018-11-07 1:48:552674 days ago1541555335IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer66574082018-11-07 1:43:172674 days ago1541554997IN
0x5f0f52Fb...D9f24e7a2
0.2 ETH0.0008630941
Sweep66482332018-11-05 13:25:542676 days ago1541424354IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer66482142018-11-05 13:20:432676 days ago1541424043IN
0x5f0f52Fb...D9f24e7a2
0.1 ETH0.0008630941
Sweep66233392018-11-01 11:22:142680 days ago1541071334IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer66233102018-11-01 11:16:042680 days ago1541070964IN
0x5f0f52Fb...D9f24e7a2
0.2 ETH0.0008630941
Sweep66088782018-10-30 2:29:412682 days ago1540866581IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer66088422018-10-30 2:23:172682 days ago1540866197IN
0x5f0f52Fb...D9f24e7a2
0.2 ETH0.0008630941
Sweep65711902018-10-23 22:33:142688 days ago1540333994IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.002332750
Sweep65709902018-10-23 21:49:032688 days ago1540331343IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65709662018-10-23 21:43:012688 days ago1540330981IN
0x5f0f52Fb...D9f24e7a2
0.1 ETH0.0008630941
Sweep65647092018-10-22 21:20:432689 days ago1540243243IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65646832018-10-22 21:14:342689 days ago1540242874IN
0x5f0f52Fb...D9f24e7a2
0.1 ETH0.0008630941
Sweep65594262018-10-22 0:27:262690 days ago1540168046IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65593992018-10-22 0:20:382690 days ago1540167638IN
0x5f0f52Fb...D9f24e7a2
0.1 ETH0.0008630941
Sweep65565362018-10-21 13:16:082691 days ago1540127768IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65565092018-10-21 13:09:142691 days ago1540127354IN
0x5f0f52Fb...D9f24e7a2
0.2 ETH0.0008630941
Sweep65472482018-10-20 0:44:522692 days ago1539996292IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65472252018-10-20 0:39:592692 days ago1539995999IN
0x5f0f52Fb...D9f24e7a2
0.09 ETH0.0008630941
Sweep65408992018-10-18 23:43:492693 days ago1539906229IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65408732018-10-18 23:37:582693 days ago1539905878IN
0x5f0f52Fb...D9f24e7a2
0.2 ETH0.0008630941
Sweep65225602018-10-15 23:53:362696 days ago1539647616IN
0x5f0f52Fb...D9f24e7a2
0 ETH0.0024996550
Transfer65225312018-10-15 23:46:022696 days ago1539647162IN
0x5f0f52Fb...D9f24e7a2
0.1 ETH0.0008630941
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-77466082019-05-12 16:06:262488 days ago1557677186
0x5f0f52Fb...D9f24e7a2
1 ETH
Transfer66574322018-11-07 1:48:552674 days ago1541555335
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer66482332018-11-05 13:25:542676 days ago1541424354
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer66233392018-11-01 11:22:142680 days ago1541071334
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer66088782018-10-30 2:29:412682 days ago1540866581
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer65709902018-10-23 21:49:032688 days ago1540331343
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer65647092018-10-22 21:20:432689 days ago1540243243
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer65594262018-10-22 0:27:262690 days ago1540168046
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer65565362018-10-21 13:16:082691 days ago1540127768
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer65472482018-10-20 0:44:522692 days ago1539996292
0x5f0f52Fb...D9f24e7a2
0.09 ETH
Transfer65408992018-10-18 23:43:492693 days ago1539906229
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer65225602018-10-15 23:53:362696 days ago1539647616
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer65075682018-10-13 13:21:172699 days ago1539436877
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer64886262018-10-10 11:21:362702 days ago1539170496
0x5f0f52Fb...D9f24e7a2
0.2 ETH
Transfer64791082018-10-08 22:27:082703 days ago1539037628
0x5f0f52Fb...D9f24e7a2
0.099 ETH
Transfer64713702018-10-07 16:31:372705 days ago1538929897
0x5f0f52Fb...D9f24e7a2
0.102 ETH
Transfer64667982018-10-06 22:45:352705 days ago1538865935
0x5f0f52Fb...D9f24e7a2
0.11 ETH
Transfer64553192018-10-05 2:07:492707 days ago1538705269
0x5f0f52Fb...D9f24e7a2
0.44 ETH
Transfer64355842018-10-01 20:54:312710 days ago1538427271
0x5f0f52Fb...D9f24e7a2
0.3 ETH
Transfer64066452018-09-27 2:58:432715 days ago1538017123
0x5f0f52Fb...D9f24e7a2
0.31 ETH
Transfer63905422018-09-24 11:35:492718 days ago1537788949
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer63876112018-09-24 0:05:422718 days ago1537747542
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer63790062018-09-22 14:15:072720 days ago1537625707
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer63760042018-09-22 2:09:392720 days ago1537582179
0x5f0f52Fb...D9f24e7a2
0.1 ETH
Transfer63663482018-09-20 11:49:242722 days ago1537444164
0x5f0f52Fb...D9f24e7a2
0.21 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.