ETH Price: $2,047.24 (+4.06%)
 

Overview

ETH Balance

0.000000000336772637 ETH

Eth Value

Less Than $0.01 (@ $2,047.24/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep87724502019-10-19 17:01:062327 days ago1571504466IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer87724332019-10-19 16:57:022327 days ago1571504222IN
0xc54A2916...00A8bf7CA
0.15098079 ETH0.0003157615
Sweep87319362019-10-13 7:55:122334 days ago1570953312IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer87319212019-10-13 7:51:562334 days ago1570953116IN
0xc54A2916...00A8bf7CA
0.2500963 ETH0.0003157615
Sweep86594512019-10-01 23:33:102345 days ago1569972790IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer86594312019-10-01 23:29:012345 days ago1569972541IN
0xc54A2916...00A8bf7CA
0.25020343 ETH0.0003157615
Sweep85934982019-09-21 15:48:302355 days ago1569080910IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer85934812019-09-21 15:45:022355 days ago1569080702IN
0xc54A2916...00A8bf7CA
0.25028865 ETH0.0006315330
Sweep85269812019-09-11 6:43:412366 days ago1568184221IN
0xc54A2916...00A8bf7CA
0 ETH0.001351627.00135
Transfer85269652019-09-11 6:38:582366 days ago1568183938IN
0xc54A2916...00A8bf7CA
0.25006771 ETH0.0002105110
Sweep84610592019-09-01 0:03:002376 days ago1567296180IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer84610402019-08-31 23:58:112376 days ago1567295891IN
0xc54A2916...00A8bf7CA
0.25012185 ETH0.0002105110
Sweep83990912019-08-22 8:39:472386 days ago1566463187IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer83990762019-08-22 8:35:402386 days ago1566462940IN
0xc54A2916...00A8bf7CA
0.25019297 ETH0.0002105110
Sweep83349192019-08-12 9:26:352396 days ago1565601995IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer83348972019-08-12 9:23:002396 days ago1565601780IN
0xc54A2916...00A8bf7CA
0.25031808 ETH0.0002105110
Sweep82704132019-08-02 9:19:302406 days ago1564737570IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer82703932019-08-02 9:15:232406 days ago1564737323IN
0xc54A2916...00A8bf7CA
0.25006883 ETH0.0002105110
Sweep82048152019-07-23 4:32:012416 days ago1563856321IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer82048012019-07-23 4:29:582416 days ago1563856198IN
0xc54A2916...00A8bf7CA
0.18525654 ETH0.0002105110
Sweep81596912019-07-16 4:01:012423 days ago1563249661IN
0xc54A2916...00A8bf7CA
0 ETH0.0015017130
Transfer81596782019-07-16 3:57:392423 days ago1563249459IN
0xc54A2916...00A8bf7CA
0.18516722 ETH0.0002105110
Sweep81140702019-07-09 1:21:272430 days ago1562635287IN
0xc54A2916...00A8bf7CA
0 ETH0.0011012522
Transfer81140562019-07-09 1:17:282430 days ago1562635048IN
0xc54A2916...00A8bf7CA
0.18506719 ETH0.0002105110
Sweep80665682019-07-01 15:59:212437 days ago1561996761IN
0xc54A2916...00A8bf7CA
0 ETH0.0015017130
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-87724502019-10-19 17:01:062327 days ago1571504466
0xc54A2916...00A8bf7CA
0.1509808 ETH
-87319362019-10-13 7:55:122334 days ago1570953312
0xc54A2916...00A8bf7CA
0.25009631 ETH
-86594512019-10-01 23:33:102345 days ago1569972790
0xc54A2916...00A8bf7CA
0.25020344 ETH
-85934982019-09-21 15:48:302355 days ago1569080910
0xc54A2916...00A8bf7CA
0.25028865 ETH
-85269812019-09-11 6:43:412366 days ago1568184221
0xc54A2916...00A8bf7CA
0.25006772 ETH
-84610592019-09-01 0:03:002376 days ago1567296180
0xc54A2916...00A8bf7CA
0.25012185 ETH
-83990912019-08-22 8:39:472386 days ago1566463187
0xc54A2916...00A8bf7CA
0.25019297 ETH
-83349192019-08-12 9:26:352396 days ago1565601995
0xc54A2916...00A8bf7CA
0.25031809 ETH
-82704132019-08-02 9:19:302406 days ago1564737570
0xc54A2916...00A8bf7CA
0.25006883 ETH
-82048152019-07-23 4:32:012416 days ago1563856321
0xc54A2916...00A8bf7CA
0.18525654 ETH
-81596912019-07-16 4:01:012423 days ago1563249661
0xc54A2916...00A8bf7CA
0.18516722 ETH
-81140702019-07-09 1:21:272430 days ago1562635287
0xc54A2916...00A8bf7CA
0.1850672 ETH
-80665682019-07-01 15:59:212437 days ago1561996761
0xc54A2916...00A8bf7CA
0.19001475 ETH
-80178752019-06-24 1:47:552445 days ago1561340875
0xc54A2916...00A8bf7CA
0.25030136 ETH
-79624052019-06-15 9:48:542454 days ago1560592134
0xc54A2916...00A8bf7CA
0.25006898 ETH
-79049082019-06-06 9:43:482463 days ago1559814228
0xc54A2916...00A8bf7CA
0.25004666 ETH
-78443752019-05-27 22:27:262472 days ago1558996046
0xc54A2916...00A8bf7CA
0.15805019 ETH
-78082382019-05-22 7:15:212478 days ago1558509321
0xc54A2916...00A8bf7CA
0.25030037 ETH
-77491732019-05-13 1:38:222487 days ago1557711502
0xc54A2916...00A8bf7CA
0.25025285 ETH
-76950232019-05-04 14:20:042495 days ago1556979604
0xc54A2916...00A8bf7CA
0.20970511 ETH
-76514322019-04-27 19:34:102502 days ago1556393650
0xc54A2916...00A8bf7CA
0.25008934 ETH
-76019872019-04-20 2:48:432510 days ago1555728523
0xc54A2916...00A8bf7CA
0.25021391 ETH
-75526272019-04-12 10:38:312518 days ago1555065511
0xc54A2916...00A8bf7CA
0.25027718 ETH
-75040132019-04-04 21:11:362525 days ago1554412296
0xc54A2916...00A8bf7CA
0.25013768 ETH
-74553312019-03-28 6:12:042533 days ago1553753524
0xc54A2916...00A8bf7CA
0.25014343 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.