ETH Price: $2,020.03 (+4.93%)
 

Overview

ETH Balance

0.024274563671979397 ETH

Eth Value

$49.04 (@ $2,020.03/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer87927672019-10-22 21:46:032321 days ago1571780763IN
0x1DfBb567...d1e9beAda
0.02427456 ETH0.000021051
Sweep87483692019-10-15 21:47:202328 days ago1571176040IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer87483522019-10-15 21:43:242328 days ago1571175804IN
0x1DfBb567...d1e9beAda
0.1177672 ETH0.000021051
Sweep87038342019-10-08 21:47:072335 days ago1570571227IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer87038122019-10-08 21:42:242335 days ago1570570944IN
0x1DfBb567...d1e9beAda
0.13033452 ETH0.000021051
Sweep86589672019-10-01 21:43:502342 days ago1569966230IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer86589492019-10-01 21:39:192342 days ago1569965959IN
0x1DfBb567...d1e9beAda
0.13288817 ETH0.000021051
Sweep86142332019-09-24 21:43:002349 days ago1569361380IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer86142132019-09-24 21:38:482349 days ago1569361128IN
0x1DfBb567...d1e9beAda
0.15200652 ETH0.000021051
Sweep85694032019-09-17 21:37:032356 days ago1568756223IN
0x1DfBb567...d1e9beAda
0 ETH0.0011262822.5
Transfer85693872019-09-17 21:33:572356 days ago1568756037IN
0x1DfBb567...d1e9beAda
0.14250627 ETH0.000021051
Sweep85245002019-09-10 21:33:202363 days ago1568151200IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer85244852019-09-10 21:30:022363 days ago1568151002IN
0x1DfBb567...d1e9beAda
0.16447275 ETH0.000021051
Sweep84796402019-09-03 21:31:352370 days ago1567546295IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer84796232019-09-03 21:27:422370 days ago1567546062IN
0x1DfBb567...d1e9beAda
0.14861423 ETH0.000021051
Sweep84346282019-08-27 21:28:192377 days ago1566941299IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer84346132019-08-27 21:25:032377 days ago1566941103IN
0x1DfBb567...d1e9beAda
0.14692971 ETH0.000021051
Sweep83896362019-08-20 21:25:482384 days ago1566336348IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer83896172019-08-20 21:20:412384 days ago1566336041IN
0x1DfBb567...d1e9beAda
0.15238863 ETH0.000021051
Sweep83445822019-08-13 21:24:152391 days ago1565731455IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer83445622019-08-13 21:19:162391 days ago1565731156IN
0x1DfBb567...d1e9beAda
0.14989668 ETH0.000021051
Sweep82994572019-08-06 21:22:012398 days ago1565126521IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer82994432019-08-06 21:19:372398 days ago1565126377IN
0x1DfBb567...d1e9beAda
0.10266864 ETH0.000021051
Sweep82543762019-07-30 21:18:482405 days ago1564521528IN
0x1DfBb567...d1e9beAda
0 ETH0.0011012522
Transfer82543582019-07-30 21:14:442405 days ago1564521284IN
0x1DfBb567...d1e9beAda
0.16005791 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-87483692019-10-15 21:47:202328 days ago1571176040
0x1DfBb567...d1e9beAda
0.1177672 ETH
-87038342019-10-08 21:47:072335 days ago1570571227
0x1DfBb567...d1e9beAda
0.13033452 ETH
-86589672019-10-01 21:43:502342 days ago1569966230
0x1DfBb567...d1e9beAda
0.13288818 ETH
-86142332019-09-24 21:43:002349 days ago1569361380
0x1DfBb567...d1e9beAda
0.15200653 ETH
-85694032019-09-17 21:37:032356 days ago1568756223
0x1DfBb567...d1e9beAda
0.14250628 ETH
-85245002019-09-10 21:33:202363 days ago1568151200
0x1DfBb567...d1e9beAda
0.16447275 ETH
-84796402019-09-03 21:31:352370 days ago1567546295
0x1DfBb567...d1e9beAda
0.14861423 ETH
-84346282019-08-27 21:28:192377 days ago1566941299
0x1DfBb567...d1e9beAda
0.14692972 ETH
-83896362019-08-20 21:25:482384 days ago1566336348
0x1DfBb567...d1e9beAda
0.15238864 ETH
-83445822019-08-13 21:24:152391 days ago1565731455
0x1DfBb567...d1e9beAda
0.14989668 ETH
-82994572019-08-06 21:22:012398 days ago1565126521
0x1DfBb567...d1e9beAda
0.10266864 ETH
-82543762019-07-30 21:18:482405 days ago1564521528
0x1DfBb567...d1e9beAda
0.16005791 ETH
-82093132019-07-23 21:16:382412 days ago1563916598
0x1DfBb567...d1e9beAda
0.18901775 ETH
-81641952019-07-16 21:11:292419 days ago1563311489
0x1DfBb567...d1e9beAda
0.19269542 ETH
-81193672019-07-09 21:06:302426 days ago1562706390
0x1DfBb567...d1e9beAda
0.16022364 ETH
-80743732019-07-02 21:02:112433 days ago1562101331
0x1DfBb567...d1e9beAda
0.17764112 ETH
-80294442019-06-25 20:58:422440 days ago1561496322
0x1DfBb567...d1e9beAda
0.22064472 ETH
-79845662019-06-18 20:58:092447 days ago1560891489
0x1DfBb567...d1e9beAda
0.2045292 ETH
-79397872019-06-11 20:54:212454 days ago1560286461
0x1DfBb567...d1e9beAda
0.18760229 ETH
-78950512019-06-04 20:50:212461 days ago1559681421
0x1DfBb567...d1e9beAda
0.2162772 ETH
-78502652019-05-28 20:51:212468 days ago1559076681
0x1DfBb567...d1e9beAda
0.21827789 ETH
-78054222019-05-21 20:46:042475 days ago1558471564
0x1DfBb567...d1e9beAda
0.17512923 ETH
-77606842019-05-14 20:41:422482 days ago1557866502
0x1DfBb567...d1e9beAda
0.19623793 ETH
-77158522019-05-07 20:39:562489 days ago1557261596
0x1DfBb567...d1e9beAda
0.15534766 ETH
-76709392019-04-30 20:37:192496 days ago1556656639
0x1DfBb567...d1e9beAda
0.19799492 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.