ETH Price: $2,063.34 (+11.37%)
 

Overview

ETH Balance

0.036707956990240046 ETH

Eth Value

$75.74 (@ $2,063.34/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer107321722020-08-25 21:59:522009 days ago1598392792IN
0xaE02fE04...98D78a7D1
0.03670795 ETH0.000021051
Sweep106866442020-08-18 22:04:502016 days ago1597788290IN
0xaE02fE04...98D78a7D1
0 ETH0.00589224103.4
Transfer106866262020-08-18 21:59:472016 days ago1597787987IN
0xaE02fE04...98D78a7D1
0.08799829 ETH0.000021051
Transfer106800952020-08-17 21:56:492017 days ago1597701409IN
0xaE02fE04...98D78a7D1
0.05624842 ETH0.000021051
Transfer106736902020-08-16 21:58:372018 days ago1597615117IN
0xaE02fE04...98D78a7D1
0.07328711 ETH0.000021051
Transfer106671762020-08-15 21:53:282019 days ago1597528408IN
0xaE02fE04...98D78a7D1
0.07468398 ETH0.000021051
Transfer106606782020-08-14 21:53:172020 days ago1597441997IN
0xaE02fE04...98D78a7D1
0.10277305 ETH0.000021051
Transfer106541782020-08-13 21:51:472021 days ago1597355507IN
0xaE02fE04...98D78a7D1
0.11019363 ETH0.000021051
Sweep106476892020-08-12 21:51:472022 days ago1597269107IN
0xaE02fE04...98D78a7D1
0 ETH0.02290797402
Transfer106476642020-08-12 21:45:162022 days ago1597268716IN
0xaE02fE04...98D78a7D1
0.10770332 ETH0.000021051
Sweep106411732020-08-11 21:46:402023 days ago1597182400IN
0xaE02fE04...98D78a7D1
0 ETH0.01077016189
Transfer106411492020-08-11 21:41:402023 days ago1597182100IN
0xaE02fE04...98D78a7D1
0.08051014 ETH0.000021051
Sweep106346672020-08-10 21:38:122024 days ago1597095492IN
0xaE02fE04...98D78a7D1
0 ETH0.00641081112.5
Transfer106346442020-08-10 21:34:252024 days ago1597095265IN
0xaE02fE04...98D78a7D1
0.07986007 ETH0.000021051
Sweep106281312020-08-09 21:33:452025 days ago1597008825IN
0xaE02fE04...98D78a7D1
0 ETH0.00598216105
Transfer106281122020-08-09 21:30:242025 days ago1597008624IN
0xaE02fE04...98D78a7D1
0.05418386 ETH0.000021051
Sweep106216172020-08-08 21:29:592026 days ago1596922199IN
0xaE02fE04...98D78a7D1
0 ETH0.0039311369
Transfer106216022020-08-08 21:25:492026 days ago1596921949IN
0xaE02fE04...98D78a7D1
0.05119256 ETH0.000021051
Sweep106151322020-08-07 21:25:212027 days ago1596835521IN
0xaE02fE04...98D78a7D1
0 ETH0.0032474657
Transfer106151132020-08-07 21:20:582027 days ago1596835258IN
0xaE02fE04...98D78a7D1
0.0708733 ETH0.000021051
Sweep106086182020-08-06 21:21:192028 days ago1596748879IN
0xaE02fE04...98D78a7D1
0 ETH0.0033322158.5
Transfer106086042020-08-06 21:17:382028 days ago1596748658IN
0xaE02fE04...98D78a7D1
0.06765539 ETH0.000021051
Sweep106021242020-08-05 21:16:302029 days ago1596662190IN
0xaE02fE04...98D78a7D1
0 ETH0.0028486550
Transfer106021022020-08-05 21:12:222029 days ago1596661942IN
0xaE02fE04...98D78a7D1
0.06843273 ETH0.000021051
Sweep105956422020-08-04 21:11:492030 days ago1596575509IN
0xaE02fE04...98D78a7D1
0 ETH0.0028486550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-106866442020-08-18 22:04:502016 days ago1597788290
0xaE02fE04...98D78a7D1
0.5051845 ETH
-106476892020-08-12 21:51:472022 days ago1597269107
0xaE02fE04...98D78a7D1
0.10770333 ETH
-106411732020-08-11 21:46:402023 days ago1597182400
0xaE02fE04...98D78a7D1
0.08051014 ETH
-106346672020-08-10 21:38:122024 days ago1597095492
0xaE02fE04...98D78a7D1
0.07986007 ETH
-106281312020-08-09 21:33:452025 days ago1597008825
0xaE02fE04...98D78a7D1
0.05418387 ETH
-106216172020-08-08 21:29:592026 days ago1596922199
0xaE02fE04...98D78a7D1
0.05119256 ETH
-106151322020-08-07 21:25:212027 days ago1596835521
0xaE02fE04...98D78a7D1
0.0708733 ETH
-106086182020-08-06 21:21:192028 days ago1596748879
0xaE02fE04...98D78a7D1
0.06765539 ETH
-106021242020-08-05 21:16:302029 days ago1596662190
0xaE02fE04...98D78a7D1
0.06843274 ETH
-105956422020-08-04 21:11:492030 days ago1596575509
0xaE02fE04...98D78a7D1
0.06619117 ETH
-105891652020-08-03 21:09:212031 days ago1596488961
0xaE02fE04...98D78a7D1
0.05029124 ETH
-105821932020-08-02 19:14:152033 days ago1596395655
0xaE02fE04...98D78a7D1
0.05016957 ETH
-105748792020-08-01 16:11:182034 days ago1596298278
0xaE02fE04...98D78a7D1
0.05010768 ETH
-105637362020-07-30 23:01:522035 days ago1596150112
0xaE02fE04...98D78a7D1
0.05008089 ETH
-105428302020-07-27 17:13:132039 days ago1595869993
0xaE02fE04...98D78a7D1
0.05007714 ETH
-105354932020-07-26 13:58:272040 days ago1595771907
0xaE02fE04...98D78a7D1
0.0500278 ETH
-105286472020-07-25 12:40:202041 days ago1595680820
0xaE02fE04...98D78a7D1
0.05005939 ETH
-105215882020-07-24 10:12:592042 days ago1595585579
0xaE02fE04...98D78a7D1
0.05014753 ETH
-105137152020-07-23 5:00:582043 days ago1595480458
0xaE02fE04...98D78a7D1
0.05002955 ETH
-105065212020-07-22 2:28:362044 days ago1595384916
0xaE02fE04...98D78a7D1
0.0542962 ETH
-105001182020-07-21 2:24:222045 days ago1595298262
0xaE02fE04...98D78a7D1
0.05317621 ETH
-104937002020-07-20 2:22:212046 days ago1595211741
0xaE02fE04...98D78a7D1
0.053772 ETH
-104871922020-07-19 2:20:262047 days ago1595125226
0xaE02fE04...98D78a7D1
0.0539912 ETH
-104806862020-07-18 2:18:082048 days ago1595038688
0xaE02fE04...98D78a7D1
0.05010574 ETH
-104739622020-07-17 1:18:052049 days ago1594948685
0xaE02fE04...98D78a7D1
0.050175 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.