ETH Price: $2,047.45 (+5.56%)
Gas: 0.04 Gwei
 

Overview

ETH Balance

0.036051680230584831 ETH

Eth Value

$73.81 (@ $2,047.45/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer84176742019-08-25 6:19:202381 days ago1566713960IN
0x90e6864d...C04200186
0.03605167 ETH0.000021051
Sweep83727312019-08-18 6:22:122388 days ago1566109332IN
0x90e6864d...C04200186
0 ETH0.0010998422
Transfer83727122019-08-18 6:17:172388 days ago1566109037IN
0x90e6864d...C04200186
0.02897189 ETH0.000021051
Transfer83276112019-08-11 6:11:472395 days ago1565503907IN
0x90e6864d...C04200186
0.03725963 ETH0.000021051
Sweep82825162019-08-04 6:12:142402 days ago1564899134IN
0x90e6864d...C04200186
0 ETH0.0011012522
Transfer82824972019-08-04 6:07:182402 days ago1564898838IN
0x90e6864d...C04200186
0.03978343 ETH0.000021051
Transfer82373782019-07-28 6:03:562409 days ago1564293836IN
0x90e6864d...C04200186
0.03703304 ETH0.000021051
Sweep81923302019-07-21 6:05:112416 days ago1563689111IN
0x90e6864d...C04200186
0 ETH0.0011012522
Transfer81923172019-07-21 6:02:512416 days ago1563688971IN
0x90e6864d...C04200186
0.04291365 ETH0.000021051
Transfer81474372019-07-14 6:01:572423 days ago1563084117IN
0x90e6864d...C04200186
0.03611905 ETH0.000021051
Sweep81024142019-07-07 6:02:032430 days ago1562479323IN
0x90e6864d...C04200186
0 ETH0.0011012522
Transfer81023962019-07-07 5:58:132430 days ago1562479093IN
0x90e6864d...C04200186
0.04953677 ETH0.000021051
Transfer80574312019-06-30 5:53:392437 days ago1561874019IN
0x90e6864d...C04200186
0.03893876 ETH0.000021051
Sweep80125912019-06-23 5:54:042444 days ago1561269244IN
0x90e6864d...C04200186
0 ETH0.0015017130
Transfer80125752019-06-23 5:50:292444 days ago1561269029IN
0x90e6864d...C04200186
0.04793666 ETH0.000021051
Transfer79677292019-06-16 5:49:502451 days ago1560664190IN
0x90e6864d...C04200186
0.02062278 ETH0.000021051
Transfer79229692019-06-09 5:44:452458 days ago1560059085IN
0x90e6864d...C04200186
0.01001656 ETH0.000021051
Transfer77524482019-05-13 14:07:472485 days ago1557756467IN
0x90e6864d...C04200186
0.01006602 ETH0.000021051
Sweep76895192019-05-03 18:07:092495 days ago1556906829IN
0x90e6864d...C04200186
0 ETH0.0024996550
Transfer76894982019-05-03 18:01:472495 days ago1556906507IN
0x90e6864d...C04200186
0.01084717 ETH0.000021051
Transfer76444742019-04-26 17:58:112502 days ago1556301491IN
0x90e6864d...C04200186
0.03192411 ETH0.000021051
Transfer75996512019-04-19 17:56:532509 days ago1555696613IN
0x90e6864d...C04200186
0.0175899 ETH0.000021051
Sweep75545992019-04-12 17:54:152516 days ago1555091655IN
0x90e6864d...C04200186
0 ETH0.0024996550
Transfer75545812019-04-12 17:51:392516 days ago1555091499IN
0x90e6864d...C04200186
0.0612246 ETH0.000021051
Transfer75095202019-04-05 17:49:572523 days ago1554486597IN
0x90e6864d...C04200186
0.01004842 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-83727312019-08-18 6:22:122388 days ago1566109332
0x90e6864d...C04200186
0.06623153 ETH
-82825162019-08-04 6:12:142402 days ago1564899134
0x90e6864d...C04200186
0.07681648 ETH
-81923302019-07-21 6:05:112416 days ago1563689111
0x90e6864d...C04200186
0.07903271 ETH
-81024142019-07-07 6:02:032430 days ago1562479323
0x90e6864d...C04200186
0.08847554 ETH
-80125912019-06-23 5:54:042444 days ago1561269244
0x90e6864d...C04200186
0.08864204 ETH
-76895192019-05-03 18:07:092495 days ago1556906829
0x90e6864d...C04200186
0.0603612 ETH
-75545992019-04-12 17:54:152516 days ago1555091655
0x90e6864d...C04200186
0.07127303 ETH
-74225342019-03-23 3:13:352536 days ago1553310815
0x90e6864d...C04200186
0.06365829 ETH
-73775762019-03-16 3:07:592543 days ago1552705679
0x90e6864d...C04200186
0.0661272 ETH
-73324582019-03-09 3:04:262550 days ago1552100666
0x90e6864d...C04200186
0.06931536 ETH
-72876552019-03-02 3:02:312557 days ago1551495751
0x90e6864d...C04200186
0.06909527 ETH
-72556122019-02-23 3:04:232564 days ago1550891063
0x90e6864d...C04200186
0.0613906 ETH
-72260082019-02-16 2:55:582571 days ago1550285758
0x90e6864d...C04200186
0.07435669 ETH
-71959512019-02-09 2:55:332578 days ago1549680933
0x90e6864d...C04200186
0.08386444 ETH
-71615452019-02-02 2:50:192585 days ago1549075819
0x90e6864d...C04200186
0.1020454 ETH
-70904262019-01-19 2:41:152599 days ago1547865675
0x90e6864d...C04200186
0.07665118 ETH
-70512662019-01-12 2:37:072606 days ago1547260627
0x90e6864d...C04200186
0.07285255 ETH
-70143452019-01-05 12:06:112613 days ago1546689971
0x90e6864d...C04200186
0.06286264 ETH
-69714502018-12-29 2:30:472620 days ago1546050647
0x90e6864d...C04200186
0.09668521 ETH
-68885772018-12-15 2:21:342634 days ago1544840494
0x90e6864d...C04200186
0.08657038 ETH
-68460772018-12-08 2:20:172641 days ago1544235617
0x90e6864d...C04200186
0.08165412 ETH
-68038432018-12-01 2:13:422648 days ago1543630422
0x90e6864d...C04200186
0.07733578 ETH
Transfer67612812018-11-24 2:05:522655 days ago1543025152
0x90e6864d...C04200186
0.09850204 ETH
Transfer66757542018-11-10 1:54:132669 days ago1541814853
0x90e6864d...C04200186
0.05893545 ETH
Transfer66330812018-11-03 1:55:402676 days ago1541210140
0x90e6864d...C04200186
0.05254197 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.