ETH Price: $2,010.81 (+5.88%)
 

Overview

ETH Balance

0.000000000639061984 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep69215772018-12-20 15:59:422627 days ago1545321582IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer69215632018-12-20 15:56:122627 days ago1545321372IN
0x36c6d77A...C6C8bF2bD
1.50400801 ETH0.0002105110
Sweep67486752018-11-22 0:31:582656 days ago1542846718IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer67486562018-11-22 0:27:302656 days ago1542846450IN
0x36c6d77A...C6C8bF2bD
1.14315891 ETH0.000147357
Sweep59013662018-07-04 1:12:192797 days ago1530666739IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0050057100
Transfer59013402018-07-04 1:05:092797 days ago1530666309IN
0x36c6d77A...C6C8bF2bD
0.25969474 ETH0.001199957
Sweep58266262018-06-21 5:09:332810 days ago1529557773IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0024996550
Transfer58265872018-06-21 4:59:272810 days ago1529557167IN
0x36c6d77A...C6C8bF2bD
0.06864819 ETH0.00012636
Sweep58253382018-06-20 23:59:572810 days ago1529539197IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer58253202018-06-20 23:55:222810 days ago1529538922IN
0x36c6d77A...C6C8bF2bD
0.35514019 ETH0.00008424
Sweep57952102018-06-15 20:51:532815 days ago1529095913IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer57951872018-06-15 20:45:232815 days ago1529095523IN
0x36c6d77A...C6C8bF2bD
0.2221407 ETH0.0002105110
Sweep57851722018-06-14 3:11:582817 days ago1528945918IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer57851562018-06-14 3:08:312817 days ago1528945711IN
0x36c6d77A...C6C8bF2bD
0.33742331 ETH0.0002105110
Sweep57061352018-05-31 3:29:342831 days ago1527737374IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer57061072018-05-31 3:22:192831 days ago1527736939IN
0x36c6d77A...C6C8bF2bD
0.11244678 ETH0.0003368116
Sweep56653182018-05-23 22:01:402838 days ago1527112900IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer56652812018-05-23 21:54:072838 days ago1527112447IN
0x36c6d77A...C6C8bF2bD
0.20073951 ETH0.0002315611
Sweep56260842018-05-16 23:15:212845 days ago1526512521IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer56260572018-05-16 23:09:352845 days ago1526512175IN
0x36c6d77A...C6C8bF2bD
0.28072005 ETH0.0002105110
Sweep55874632018-05-10 4:43:212852 days ago1525927401IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
Transfer55873782018-05-10 4:22:352852 days ago1525926155IN
0x36c6d77A...C6C8bF2bD
0.20113802 ETH0.0002105110
Sweep54514992018-04-16 15:00:042876 days ago1523890804IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0024996550
Transfer54514662018-04-16 14:52:102876 days ago1523890330IN
0x36c6d77A...C6C8bF2bD
0.16 ETH0.000021051
Sweep54433582018-04-15 5:52:422877 days ago1523771562IN
0x36c6d77A...C6C8bF2bD
0 ETH0.0025028550
View all transactions

Latest 22 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-69215772018-12-20 15:59:422627 days ago1545321582
0x36c6d77A...C6C8bF2bD
1.50400801 ETH
Transfer67486752018-11-22 0:31:582656 days ago1542846718
0x36c6d77A...C6C8bF2bD
1.14315891 ETH
Transfer59013662018-07-04 1:12:192797 days ago1530666739
0x36c6d77A...C6C8bF2bD
0.25969474 ETH
Transfer58266262018-06-21 5:09:332810 days ago1529557773
0x36c6d77A...C6C8bF2bD
0.06864819 ETH
Transfer58253382018-06-20 23:59:572810 days ago1529539197
0x36c6d77A...C6C8bF2bD
0.35514019 ETH
Transfer57952102018-06-15 20:51:532815 days ago1529095913
0x36c6d77A...C6C8bF2bD
0.2221407 ETH
Transfer57851722018-06-14 3:11:582817 days ago1528945918
0x36c6d77A...C6C8bF2bD
0.33742331 ETH
Transfer57061352018-05-31 3:29:342831 days ago1527737374
0x36c6d77A...C6C8bF2bD
0.11244678 ETH
Transfer56653182018-05-23 22:01:402838 days ago1527112900
0x36c6d77A...C6C8bF2bD
0.20073951 ETH
Transfer56260842018-05-16 23:15:212845 days ago1526512521
0x36c6d77A...C6C8bF2bD
0.28072005 ETH
Transfer55874632018-05-10 4:43:212852 days ago1525927401
0x36c6d77A...C6C8bF2bD
0.20113802 ETH
Transfer54514992018-04-16 15:00:042876 days ago1523890804
0x36c6d77A...C6C8bF2bD
0.16 ETH
Transfer54433582018-04-15 5:52:422877 days ago1523771562
0x36c6d77A...C6C8bF2bD
0.16580853 ETH
Transfer54344532018-04-13 17:52:472878 days ago1523641967
0x36c6d77A...C6C8bF2bD
0.25032516 ETH
Transfer54234072018-04-11 21:03:342880 days ago1523480614
0x36c6d77A...C6C8bF2bD
0.28548318 ETH
Transfer53918852018-04-06 15:43:422885 days ago1523029422
0x36c6d77A...C6C8bF2bD
0.20064558 ETH
Transfer52984392018-03-22 1:48:412901 days ago1521683321
0x36c6d77A...C6C8bF2bD
0.1567689 ETH
Transfer51737752018-02-28 22:37:392922 days ago1519857459
0x36c6d77A...C6C8bF2bD
0.08842522 ETH
Transfer51736822018-02-28 22:13:322922 days ago1519856012
0x36c6d77A...C6C8bF2bD
0.07789921 ETH
Transfer51398432018-02-23 3:50:212928 days ago1519357821
0x36c6d77A...C6C8bF2bD
0.08780702 ETH
Transfer51089712018-02-17 21:56:482933 days ago1518904608
0x36c6d77A...C6C8bF2bD
0.1813903 ETH
Transfer49496062018-01-22 1:47:242960 days ago1516585644  Contract Creation0 ETH
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.