ETH Price: $1,981.58 (-2.26%)
 

Overview

ETH Balance

0.000000009937517096 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep130794352021-08-23 4:31:261653 days ago1629693086IN
0x883D1ca0...C60EFE26A
0 ETH0.004059971.74878789
Transfer130794192021-08-23 4:27:201653 days ago1629692840IN
0x883D1ca0...C60EFE26A
0.21973415 ETH0.0022314106
Sweep129418862021-08-01 20:55:271675 days ago1627851327IN
0x883D1ca0...C60EFE26A
0 ETH0.0021469437.95
Transfer129418582021-08-01 20:50:251675 days ago1627851025IN
0x883D1ca0...C60EFE26A
1 ETH0.0008630941
Sweep129174182021-07-28 23:59:531679 days ago1627516793IN
0x883D1ca0...C60EFE26A
0 ETH0.0019226130
Sweep129173882021-07-28 23:52:091679 days ago1627516329IN
0x883D1ca0...C60EFE26A
0 ETH0.0019226130
Sweep128669892021-07-21 1:51:551686 days ago1626832315IN
0x883D1ca0...C60EFE26A
0 ETH0.0016971930
Transfer128669712021-07-21 1:47:371686 days ago1626832057IN
0x883D1ca0...C60EFE26A
2.3 ETH0.0003494416.6
Sweep128668892021-07-21 1:30:351686 days ago1626831035IN
0x883D1ca0...C60EFE26A
0 ETH0.0020277330
Sweep124430792021-05-16 3:25:111752 days ago1621135511IN
0x883D1ca0...C60EFE26A
0 ETH0.0032536357.5
Transfer124430632021-05-16 3:20:311752 days ago1621135231IN
0x883D1ca0...C60EFE26A
0.62746932 ETH0.0022735108
Sweep123714802021-05-05 2:20:281763 days ago1620181228IN
0x883D1ca0...C60EFE26A
0 ETH0.0024402243.125
Transfer123714612021-05-05 2:15:421763 days ago1620180942IN
0x883D1ca0...C60EFE26A
0.61174041 ETH0.0012630660
Sweep123711742021-05-05 1:09:511763 days ago1620176991IN
0x883D1ca0...C60EFE26A
0 ETH0.0033369349.3695
Sweep122430562021-04-15 6:34:151783 days ago1618468455IN
0x883D1ca0...C60EFE26A
0 ETH0.00576566101.2
Transfer122430322021-04-15 6:30:231783 days ago1618468223IN
0x883D1ca0...C60EFE26A
1.2 ETH0.00235771112
Sweep122364742021-04-14 5:57:361784 days ago1618379856IN
0x883D1ca0...C60EFE26A
0 ETH0.0052415192
Transfer122364572021-04-14 5:54:031784 days ago1618379643IN
0x883D1ca0...C60EFE26A
0.5 ETH0.0017472383
Sweep121831972021-04-06 1:35:461792 days ago1617672946IN
0x883D1ca0...C60EFE26A
0 ETH0.00952588167.2000016
Transfer121831762021-04-06 1:30:291792 days ago1617672629IN
0x883D1ca0...C60EFE26A
0.4 ETH0.0032629155
Sweep120603672021-03-18 4:04:091811 days ago1616040249IN
0x883D1ca0...C60EFE26A
0 ETH0.0092752162.8
Transfer120603472021-03-18 4:00:011811 days ago1616040001IN
0x883D1ca0...C60EFE26A
0.22 ETH0.00288398137
Sweep119956522021-03-08 4:19:461821 days ago1615177186IN
0x883D1ca0...C60EFE26A
0 ETH0.00601761105.6000016
Transfer119956292021-03-08 4:14:551821 days ago1615176895IN
0x883D1ca0...C60EFE26A
0.74592074 ETH0.00290503138
Sweep116571222021-01-15 3:12:271873 days ago1610680347IN
0x883D1ca0...C60EFE26A
0 ETH0.0041401860
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-130794352021-08-23 4:31:261653 days ago1629693086
0x883D1ca0...C60EFE26A
0.21973415 ETH
-129418862021-08-01 20:55:271675 days ago1627851327
0x883D1ca0...C60EFE26A
1 ETH
-128669892021-07-21 1:51:551686 days ago1626832315
0x883D1ca0...C60EFE26A
2.3 ETH
-124430792021-05-16 3:25:111752 days ago1621135511
0x883D1ca0...C60EFE26A
0.62746932 ETH
-123714802021-05-05 2:20:281763 days ago1620181228
0x883D1ca0...C60EFE26A
0.61174041 ETH
-122430562021-04-15 6:34:151783 days ago1618468455
0x883D1ca0...C60EFE26A
1.2 ETH
-122364742021-04-14 5:57:361784 days ago1618379856
0x883D1ca0...C60EFE26A
0.5 ETH
-121831972021-04-06 1:35:461792 days ago1617672946
0x883D1ca0...C60EFE26A
0.4 ETH
-120603672021-03-18 4:04:091811 days ago1616040249
0x883D1ca0...C60EFE26A
0.22 ETH
-119956522021-03-08 4:19:461821 days ago1615177186
0x883D1ca0...C60EFE26A
0.74592074 ETH
-115922452021-01-05 4:12:091883 days ago1609819929
0x883D1ca0...C60EFE26A
3.963 ETH
-111945372020-11-05 2:38:581944 days ago1604543938
0x883D1ca0...C60EFE26A
9.82674853 ETH
-106502732020-08-13 7:29:592028 days ago1597303799
0x883D1ca0...C60EFE26A
42.5 ETH
-102357632020-06-10 4:21:152092 days ago1591762875
0x883D1ca0...C60EFE26A
1 ETH
-101906612020-06-03 4:22:092099 days ago1591158129
0x883D1ca0...C60EFE26A
11 ETH
-98629372020-04-13 8:30:482150 days ago1586766648
0x883D1ca0...C60EFE26A
4.94 ETH
-98629062020-04-13 8:21:322150 days ago1586766092
0x883D1ca0...C60EFE26A
0.06 ETH
-97837922020-04-01 4:20:012162 days ago1585714801
0x883D1ca0...C60EFE26A
0.9408493 ETH
-97507622020-03-27 2:30:132167 days ago1585276213
0x883D1ca0...C60EFE26A
1 ETH
-72344452019-02-18 3:20:142570 days ago1550460014
0x883D1ca0...C60EFE26A
0.5279893 ETH
-71710632019-02-04 1:27:022584 days ago1549243622
0x883D1ca0...C60EFE26A
0.68979759 ETH
-71471052019-01-30 4:02:582589 days ago1548820978
0x883D1ca0...C60EFE26A
0.48 ETH
Transfer64870882018-10-10 5:31:532701 days ago1539149513
0x883D1ca0...C60EFE26A
1.06482202 ETH
Transfer56489992018-05-21 0:37:002843 days ago1526863020
0x883D1ca0...C60EFE26A
0.221 ETH
Transfer55308382018-04-30 7:07:112864 days ago1525072031
0x883D1ca0...C60EFE26A
1.34 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.