ETH Price: $1,983.09 (-4.00%)
 

Overview

ETH Balance

0.000000005867472868 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep113617522020-11-30 18:31:221914 days ago1606761082IN
0xD137ecc5...ADE92665E
0 ETH0.0049850487.48
Transfer113617272020-11-30 18:26:341914 days ago1606760794IN
0xD137ecc5...ADE92665E
0.20179106 ETH0.000021051
Sweep113160812020-11-23 18:27:431921 days ago1606156063IN
0xD137ecc5...ADE92665E
0 ETH0.0036234863.6
Transfer113160562020-11-23 18:18:441921 days ago1606155524IN
0xD137ecc5...ADE92665E
0.28844814 ETH0.000021051
Sweep112704632020-11-16 18:15:371928 days ago1605550537IN
0xD137ecc5...ADE92665E
0 ETH0.0027154447.652
Transfer112704462020-11-16 18:11:451928 days ago1605550305IN
0xD137ecc5...ADE92665E
0.27717985 ETH0.000021051
Sweep112248782020-11-09 18:12:561935 days ago1604945576IN
0xD137ecc5...ADE92665E
0 ETH0.0017095530
Transfer112248542020-11-09 18:08:191935 days ago1604945299IN
0xD137ecc5...ADE92665E
0.29813227 ETH0.000021051
Sweep111792252020-11-02 18:09:391942 days ago1604340579IN
0xD137ecc5...ADE92665E
0 ETH0.0024754243.44
Transfer111792042020-11-02 18:01:491942 days ago1604340109IN
0xD137ecc5...ADE92665E
0.31554487 ETH0.000021051
Sweep111335322020-10-26 18:02:051949 days ago1603735325IN
0xD137ecc5...ADE92665E
0 ETH0.0036340963.77292
Transfer111335182020-10-26 17:59:211949 days ago1603735161IN
0xD137ecc5...ADE92665E
0.32176079 ETH0.000021051
Sweep110879482020-10-19 17:55:571956 days ago1603130157IN
0xD137ecc5...ADE92665E
0 ETH0.0017095530
Transfer110879272020-10-19 17:52:291956 days ago1603129949IN
0xD137ecc5...ADE92665E
0.33223468 ETH0.000021051
Sweep110422192020-10-12 17:53:531963 days ago1602525233IN
0xD137ecc5...ADE92665E
0 ETH0.0036003163.18
Transfer110421982020-10-12 17:49:201963 days ago1602524960IN
0xD137ecc5...ADE92665E
0.34776259 ETH0.000021051
Sweep109971792020-10-05 17:46:021970 days ago1601919962IN
0xD137ecc5...ADE92665E
0 ETH0.0028492550
Transfer109971622020-10-05 17:42:531970 days ago1601919773IN
0xD137ecc5...ADE92665E
0.3966357 ETH0.000021051
Sweep109523252020-09-28 17:35:411977 days ago1601314541IN
0xD137ecc5...ADE92665E
0 ETH0.00615438108
Transfer109523052020-09-28 17:33:051977 days ago1601314385IN
0xD137ecc5...ADE92665E
0.40665675 ETH0.000021051
Sweep109071922020-09-21 17:31:551984 days ago1600709515IN
0xD137ecc5...ADE92665E
0 ETH0.0054705696
Transfer109071762020-09-21 17:28:071984 days ago1600709287IN
0xD137ecc5...ADE92665E
0.63551392 ETH0.000021051
Sweep108614922020-09-14 17:31:221991 days ago1600104682IN
0xD137ecc5...ADE92665E
0 ETH0.01347125236.4
Transfer108614682020-09-14 17:25:551991 days ago1600104355IN
0xD137ecc5...ADE92665E
0.47615106 ETH0.000021051
Sweep108158672020-09-07 17:26:491998 days ago1599499609IN
0xD137ecc5...ADE92665E
0 ETH0.00745363130.8
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-113617522020-11-30 18:31:221914 days ago1606761082
0xD137ecc5...ADE92665E
0.20179106 ETH
-113160812020-11-23 18:27:431921 days ago1606156063
0xD137ecc5...ADE92665E
0.28844815 ETH
-112704632020-11-16 18:15:371928 days ago1605550537
0xD137ecc5...ADE92665E
0.27717985 ETH
-112248782020-11-09 18:12:561935 days ago1604945576
0xD137ecc5...ADE92665E
0.29813228 ETH
-111792252020-11-02 18:09:391942 days ago1604340579
0xD137ecc5...ADE92665E
0.31554487 ETH
-111335322020-10-26 18:02:051949 days ago1603735325
0xD137ecc5...ADE92665E
0.3217608 ETH
-110879482020-10-19 17:55:571956 days ago1603130157
0xD137ecc5...ADE92665E
0.33223468 ETH
-110422192020-10-12 17:53:531963 days ago1602525233
0xD137ecc5...ADE92665E
0.34776259 ETH
-109971792020-10-05 17:46:021970 days ago1601919962
0xD137ecc5...ADE92665E
0.39663571 ETH
-109523252020-09-28 17:35:411977 days ago1601314541
0xD137ecc5...ADE92665E
0.40665676 ETH
-109071922020-09-21 17:31:551984 days ago1600709515
0xD137ecc5...ADE92665E
0.63551392 ETH
-108614922020-09-14 17:31:221991 days ago1600104682
0xD137ecc5...ADE92665E
0.47615107 ETH
-108158672020-09-07 17:26:491998 days ago1599499609
0xD137ecc5...ADE92665E
0.7707899 ETH
-107700222020-08-31 17:21:532005 days ago1598894513
0xD137ecc5...ADE92665E
0.50612036 ETH
-107245512020-08-24 17:49:502012 days ago1598291390
0xD137ecc5...ADE92665E
0.50693127 ETH
-106787922020-08-17 17:08:322019 days ago1597684112
0xD137ecc5...ADE92665E
0.6064735 ETH
-106334262020-08-10 17:06:482026 days ago1597079208
0xD137ecc5...ADE92665E
0.44984209 ETH
-105880642020-08-03 17:01:452033 days ago1596474105
0xD137ecc5...ADE92665E
0.45916931 ETH
-105427702020-07-27 17:00:292040 days ago1595869229
0xD137ecc5...ADE92665E
0.49726732 ETH
-104975612020-07-20 17:00:082047 days ago1595264408
0xD137ecc5...ADE92665E
0.4423439 ETH
-104524182020-07-13 16:53:152054 days ago1594659195
0xD137ecc5...ADE92665E
0.43224831 ETH
-104070572020-07-06 16:51:552061 days ago1594054315
0xD137ecc5...ADE92665E
0.43642447 ETH
-103618632020-06-29 16:42:372068 days ago1593448957
0xD137ecc5...ADE92665E
0.42570072 ETH
-103166912020-06-22 16:38:382075 days ago1592843918
0xD137ecc5...ADE92665E
0.41444926 ETH
-102714392020-06-15 16:35:142082 days ago1592238914
0xD137ecc5...ADE92665E
0.61609851 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.