ETH Price: $2,326.10 (+0.43%)

Contract

0x6CDcAc6b9aA5eC4B5eF0d1e148be4c022cA6E295
 

Overview

ETH Balance

0.000000005922235757 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep51836192018-03-02 14:48:392937 days ago1520002119IN
0x6CDcAc6b...22cA6E295
0 ETH0.0025028550
Transfer51835792018-03-02 14:38:522937 days ago1520001532IN
0x6CDcAc6b...22cA6E295
0.19154609 ETH0.0002105110
Sweep51398432018-02-23 3:50:212945 days ago1519357821IN
0x6CDcAc6b...22cA6E295
0 ETH0.0025028550
Transfer51397992018-02-23 3:38:192945 days ago1519357099IN
0x6CDcAc6b...22cA6E295
0.19679137 ETH0.0002105110
Sweep51072702018-02-17 14:59:562950 days ago1518879596IN
0x6CDcAc6b...22cA6E295
0 ETH0.0025028550
Transfer51072292018-02-17 14:49:472950 days ago1518878987IN
0x6CDcAc6b...22cA6E295
0.18879572 ETH0.0004210220
Sweep50532662018-02-08 13:50:042959 days ago1518097804IN
0x6CDcAc6b...22cA6E295
0 ETH0.0044993790
Transfer50532422018-02-08 13:41:372959 days ago1518097297IN
0x6CDcAc6b...22cA6E295
0.20012904 ETH0.0004210220
Sweep49757532018-01-26 11:50:102972 days ago1516967410IN
0x6CDcAc6b...22cA6E295
0 ETH0.0045051390
Transfer49757152018-01-26 11:41:512972 days ago1516966911IN
0x6CDcAc6b...22cA6E295
0.2420141 ETH0.0004210220
Sweep49299392018-01-18 16:01:512980 days ago1516291311IN
0x6CDcAc6b...22cA6E295
0 ETH0.0045051390
Transfer49299032018-01-18 15:51:222980 days ago1516290682IN
0x6CDcAc6b...22cA6E295
0.24598113 ETH0.0010525550
Sweep49245902018-01-17 16:51:212981 days ago1516207881IN
0x6CDcAc6b...22cA6E295
0 ETH0.0045051390
Transfer49245562018-01-17 16:44:202981 days ago1516207460IN
0x6CDcAc6b...22cA6E295
0.71722146 ETH0.001073651
Sweep47712722017-12-21 13:10:043008 days ago1513861804IN
0x6CDcAc6b...22cA6E295
0 ETH0.0028031956
Transfer47711382017-12-21 12:35:123008 days ago1513859712IN
0x6CDcAc6b...22cA6E295
0.22555108 ETH0.0008420440
Sweep47380102017-12-15 17:06:263014 days ago1513357586IN
0x6CDcAc6b...22cA6E295
0 ETH0.002552951
Transfer47379652017-12-15 16:54:333014 days ago1513356873IN
0x6CDcAc6b...22cA6E295
0.39970427 ETH0.0005283825.1
Sweep46973882017-12-08 15:28:183021 days ago1512746898IN
0x6CDcAc6b...22cA6E295
0 ETH0.0039945479.8
Transfer46973392017-12-08 15:18:183021 days ago1512746298IN
0x6CDcAc6b...22cA6E295
0.39870921 ETH0.001199957
Sweep46862662017-12-06 17:11:253023 days ago1512580285IN
0x6CDcAc6b...22cA6E295
0 ETH0.0029433558.8
Transfer46861792017-12-06 16:48:293023 days ago1512578909IN
0x6CDcAc6b...22cA6E295
2.38184799 ETH0.0008841442
Sweep46700582017-12-03 19:35:543026 days ago1512329754IN
0x6CDcAc6b...22cA6E295
0 ETH0.0009998620
Transfer46700142017-12-03 19:25:193026 days ago1512329119IN
0x6CDcAc6b...22cA6E295
0.16899181 ETH0.0004210220
Sweep46521302017-11-30 20:53:403029 days ago1512075220IN
0x6CDcAc6b...22cA6E295
0 ETH0.0010011420
View all transactions

Latest 16 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer51836192018-03-02 14:48:392937 days ago1520002119
0x6CDcAc6b...22cA6E295
0.19154609 ETH
Transfer51398432018-02-23 3:50:212945 days ago1519357821
0x6CDcAc6b...22cA6E295
0.19679138 ETH
Transfer51072702018-02-17 14:59:562950 days ago1518879596
0x6CDcAc6b...22cA6E295
0.18879572 ETH
Transfer50532662018-02-08 13:50:042959 days ago1518097804
0x6CDcAc6b...22cA6E295
0.20012904 ETH
Transfer49757532018-01-26 11:50:102972 days ago1516967410
0x6CDcAc6b...22cA6E295
0.24201411 ETH
Transfer49299392018-01-18 16:01:512980 days ago1516291311
0x6CDcAc6b...22cA6E295
0.24598113 ETH
Transfer49245902018-01-17 16:51:212981 days ago1516207881
0x6CDcAc6b...22cA6E295
0.71722147 ETH
Transfer47712722017-12-21 13:10:043008 days ago1513861804
0x6CDcAc6b...22cA6E295
0.22555109 ETH
Transfer47380102017-12-15 17:06:263014 days ago1513357586
0x6CDcAc6b...22cA6E295
0.39970427 ETH
Transfer46973882017-12-08 15:28:183021 days ago1512746898
0x6CDcAc6b...22cA6E295
0.39870922 ETH
Transfer46862662017-12-06 17:11:253023 days ago1512580285
0x6CDcAc6b...22cA6E295
2.38184799 ETH
Transfer46700582017-12-03 19:35:543026 days ago1512329754
0x6CDcAc6b...22cA6E295
0.16899181 ETH
Transfer46521302017-11-30 20:53:403029 days ago1512075220
0x6CDcAc6b...22cA6E295
1.16041487 ETH
Transfer46438332017-11-29 12:18:363030 days ago1511957916
0x6CDcAc6b...22cA6E295
0.39817768 ETH
Transfer46384622017-11-28 15:17:453031 days ago1511882265
0x6CDcAc6b...22cA6E295
9.83475552 ETH
Transfer44656722017-10-31 18:56:463059 days ago1509476206  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.