ETH Price: $2,068.59 (+11.52%)
 

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
Sweep151050412022-07-08 23:51:591327 days ago1657324319IN
0xA16D72C8...f836DEaC5
0 ETH0.0016971930
Sweep150351322022-06-27 15:50:581339 days ago1656345058IN
0xA16D72C8...f836DEaC5
0 ETH0.0050203788.72270548
Sweep150344312022-06-27 12:45:411339 days ago1656333941IN
0xA16D72C8...f836DEaC5
0 ETH0.0016971930
Sweep148998322022-06-03 22:57:361362 days ago1654297056IN
0xA16D72C8...f836DEaC5
0 ETH0.003617363.94047894
Sweep147259302022-05-06 21:35:071390 days ago1651872907IN
0xA16D72C8...f836DEaC5
0 ETH0.0019710834.84152866
Sweep145290782022-04-06 0:15:291421 days ago1649204129IN
0xA16D72C8...f836DEaC5
0 ETH0.0040395571.38908419
Sweep143225642022-03-04 20:06:211453 days ago1646424381IN
0xA16D72C8...f836DEaC5
0 ETH0.00624388110.34525189
Sweep141417342022-02-04 20:31:441481 days ago1644006704IN
0xA16D72C8...f836DEaC5
0 ETH0.0099233175.3698251
Sweep139525692022-01-06 15:06:081511 days ago1641481568IN
0xA16D72C8...f836DEaC5
0 ETH0.01572734277.94198963
Sweep137550202021-12-06 22:55:541541 days ago1638831354IN
0xA16D72C8...f836DEaC5
0 ETH0.00938638165.9163848
Sweep135511042021-11-04 15:47:341574 days ago1636040854IN
0xA16D72C8...f836DEaC5
0 ETH0.01035697183.03392388
Sweep135508182021-11-04 14:45:381574 days ago1636037138IN
0xA16D72C8...f836DEaC5
0 ETH0.013006229.94658863
Sweep134630522021-10-21 20:03:501587 days ago1634846630IN
0xA16D72C8...f836DEaC5
0 ETH0.0053740694.99350975
Transfer134630372021-10-21 20:00:201587 days ago1634846420IN
0xA16D72C8...f836DEaC5
0.71353974 ETH0.00269452128
Sweep133742552021-10-07 21:39:381601 days ago1633642778IN
0xA16D72C8...f836DEaC5
0 ETH0.01366849241.60806236
Transfer133742362021-10-07 21:35:061601 days ago1633642506IN
0xA16D72C8...f836DEaC5
10.5 ETH0.00405373192.56750081
Sweep133740812021-10-07 20:57:031601 days ago1633640223IN
0xA16D72C8...f836DEaC5
0 ETH0.00719013127.06781433
Transfer133740602021-10-07 20:52:551601 days ago1633639975IN
0xA16D72C8...f836DEaC5
0.777 ETH0.00307344146
Sweep131354312021-08-31 20:15:401638 days ago1630440940IN
0xA16D72C8...f836DEaC5
0 ETH0.01261452222.97784398
Transfer131354162021-08-31 20:12:591638 days ago1630440779IN
0xA16D72C8...f836DEaC5
0.81 ETH0.00414471196.88944604
Transfer131354142021-08-31 20:12:061638 days ago1630440726IN
0xA16D72C8...f836DEaC5
0.81 ETH0.0039166186.50489195
Sweep131080922021-08-27 14:57:451643 days ago1630076265IN
0xA16D72C8...f836DEaC5
0 ETH0.01139342153.37032262
Sweep130102152021-08-12 11:57:591658 days ago1628769479IN
0xA16D72C8...f836DEaC5
0 ETH0.0024036332.35080285
Sweep130066242021-08-11 22:42:581658 days ago1628721778IN
0xA16D72C8...f836DEaC5
0 ETH0.0054264373.04683792

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer151050412022-07-08 23:51:591327 days ago1657324319
0xA16D72C8...f836DEaC5
2.6 ETH
Transfer151050232022-07-08 23:47:421327 days ago1657324062
0xA16D72C8...f836DEaC5
2.6 ETH
Transfer150351322022-06-27 15:50:581339 days ago1656345058
0xA16D72C8...f836DEaC5
999.9 ETH
Transfer150351152022-06-27 15:47:271339 days ago1656344847
0xA16D72C8...f836DEaC5
999.9 ETH
Transfer150344312022-06-27 12:45:411339 days ago1656333941
0xA16D72C8...f836DEaC5
0.1 ETH
Transfer150344152022-06-27 12:42:441339 days ago1656333764
0xA16D72C8...f836DEaC5
0.1 ETH
-148998322022-06-03 22:57:361362 days ago1654297056
0xA16D72C8...f836DEaC5
3.1 ETH
-148998162022-06-03 22:55:191362 days ago1654296919
0xA16D72C8...f836DEaC5
3.1 ETH
-147259302022-05-06 21:35:071390 days ago1651872907
0xA16D72C8...f836DEaC5
3 ETH
-147259092022-05-06 21:30:581390 days ago1651872658
0xA16D72C8...f836DEaC5
3 ETH
-145290782022-04-06 0:15:291421 days ago1649204129
0xA16D72C8...f836DEaC5
3.21111111 ETH
-145290602022-04-06 0:12:331421 days ago1649203953
0xA16D72C8...f836DEaC5
3.21111111 ETH
-143225642022-03-04 20:06:211453 days ago1646424381
0xA16D72C8...f836DEaC5
3.11111111 ETH
-143225362022-03-04 20:01:101453 days ago1646424070
0xA16D72C8...f836DEaC5
3.11111111 ETH
-141417342022-02-04 20:31:441481 days ago1644006704
0xA16D72C8...f836DEaC5
3.44444444 ETH
-141417172022-02-04 20:27:371481 days ago1644006457
0xA16D72C8...f836DEaC5
3.44444444 ETH
-139525692022-01-06 15:06:081511 days ago1641481568
0xA16D72C8...f836DEaC5
3.11111111 ETH
-139525542022-01-06 15:03:181511 days ago1641481398
0xA16D72C8...f836DEaC5
3.11111111 ETH
-137550202021-12-06 22:55:541541 days ago1638831354
0xA16D72C8...f836DEaC5
3.33333333 ETH
-137549992021-12-06 22:51:301541 days ago1638831090
0xA16D72C8...f836DEaC5
3.33333333 ETH
-135511042021-11-04 15:47:341574 days ago1636040854
0xA16D72C8...f836DEaC5
3.38444444 ETH
-135510882021-11-04 15:44:381574 days ago1636040678
0xA16D72C8...f836DEaC5
3.38444444 ETH
-135508182021-11-04 14:45:381574 days ago1636037138
0xA16D72C8...f836DEaC5
0.06 ETH
-135508012021-11-04 14:40:251574 days ago1636036825
0xA16D72C8...f836DEaC5
0.05 ETH
-135450102021-11-03 16:48:381575 days ago1635958118
0xA16D72C8...f836DEaC5
0.01 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.