ETH Price: $2,007.68 (+0.20%)

Contract

0xB927EDf87e3e55450b38754fA1ffBB4E5CbdF4eD
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep69766822018-12-29 23:32:192647 days ago1546126339IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer69766622018-12-29 23:27:442647 days ago1546126064IN
0xB927EDf8...E5CbdF4eD
0.05051876 ETH0.000021051
Sweep69660972018-12-28 4:45:192648 days ago1545972319IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0025028550
Transfer69660702018-12-28 4:41:382648 days ago1545972098IN
0xB927EDf8...E5CbdF4eD
0.07470413 ETH0.000021051
Sweep69498142018-12-25 10:46:252651 days ago1545734785IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer69497932018-12-25 10:43:052651 days ago1545734585IN
0xB927EDf8...E5CbdF4eD
0.05094232 ETH0.000021051
Sweep69383692018-12-23 12:35:202653 days ago1545568520IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0025028550
Transfer69383552018-12-23 12:31:212653 days ago1545568281IN
0xB927EDf8...E5CbdF4eD
0.07416727 ETH0.000021051
Sweep69219782018-12-20 17:37:232656 days ago1545327443IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024964550
Transfer69219602018-12-20 17:31:502656 days ago1545327110IN
0xB927EDf8...E5CbdF4eD
0.05048188 ETH0.000021051
Sweep69109772018-12-18 20:25:512658 days ago1545164751IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer69109612018-12-18 20:21:502658 days ago1545164510IN
0xB927EDf8...E5CbdF4eD
0.05142838 ETH0.000021051
Sweep68999962018-12-16 23:30:502660 days ago1545003050IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer68999762018-12-16 23:25:462660 days ago1545002746IN
0xB927EDf8...E5CbdF4eD
0.05183485 ETH0.000021051
Sweep68883642018-12-15 1:33:292662 days ago1544837609IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer68883422018-12-15 1:29:152662 days ago1544837355IN
0xB927EDf8...E5CbdF4eD
0.05062463 ETH0.000021051
Sweep68772532018-12-13 5:35:072663 days ago1544679307IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer68772332018-12-13 5:29:312663 days ago1544678971IN
0xB927EDf8...E5CbdF4eD
0.05000926 ETH0.000021051
Sweep68653062018-12-11 6:09:002665 days ago1544508540IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer68652882018-12-11 6:04:412665 days ago1544508281IN
0xB927EDf8...E5CbdF4eD
0.05000201 ETH0.000021051
Sweep68544612018-12-09 11:33:012667 days ago1544355181IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer68544442018-12-09 11:28:452667 days ago1544354925IN
0xB927EDf8...E5CbdF4eD
0.05188422 ETH0.000021051
Sweep68423552018-12-07 11:31:152669 days ago1544182275IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
Transfer68423322018-12-07 11:26:442669 days ago1544182004IN
0xB927EDf8...E5CbdF4eD
0.05103688 ETH0.000021051
Sweep68319032018-12-05 17:47:252671 days ago1544032045IN
0xB927EDf8...E5CbdF4eD
0 ETH0.0024996550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-69766822018-12-29 23:32:192647 days ago1546126339
0xB927EDf8...E5CbdF4eD
0.05051876 ETH
-69660972018-12-28 4:45:192648 days ago1545972319
0xB927EDf8...E5CbdF4eD
0.07470413 ETH
-69498142018-12-25 10:46:252651 days ago1545734785
0xB927EDf8...E5CbdF4eD
0.05094232 ETH
-69383692018-12-23 12:35:202653 days ago1545568520
0xB927EDf8...E5CbdF4eD
0.07416727 ETH
-69219782018-12-20 17:37:232656 days ago1545327443
0xB927EDf8...E5CbdF4eD
0.05048188 ETH
-69109772018-12-18 20:25:512658 days ago1545164751
0xB927EDf8...E5CbdF4eD
0.05142838 ETH
-68999962018-12-16 23:30:502660 days ago1545003050
0xB927EDf8...E5CbdF4eD
0.05183485 ETH
-68883642018-12-15 1:33:292662 days ago1544837609
0xB927EDf8...E5CbdF4eD
0.05062463 ETH
-68772532018-12-13 5:35:072663 days ago1544679307
0xB927EDf8...E5CbdF4eD
0.05000926 ETH
-68653062018-12-11 6:09:002665 days ago1544508540
0xB927EDf8...E5CbdF4eD
0.05000201 ETH
-68544612018-12-09 11:33:012667 days ago1544355181
0xB927EDf8...E5CbdF4eD
0.05188422 ETH
-68423552018-12-07 11:31:152669 days ago1544182275
0xB927EDf8...E5CbdF4eD
0.05103688 ETH
-68319032018-12-05 17:47:252671 days ago1544032045
0xB927EDf8...E5CbdF4eD
0.05143474 ETH
-68190492018-12-03 14:46:182673 days ago1543848378
0xB927EDf8...E5CbdF4eD
0.05013689 ETH
-68087452018-12-01 21:38:302675 days ago1543700310
0xB927EDf8...E5CbdF4eD
0.05054796 ETH
Transfer67948002018-11-29 14:28:252677 days ago1543501705
0xB927EDf8...E5CbdF4eD
0.05043064 ETH
Transfer67804892018-11-27 5:37:562679 days ago1543297076
0xB927EDf8...E5CbdF4eD
0.0511533 ETH
Transfer67662542018-11-24 21:39:062682 days ago1543095546
0xB927EDf8...E5CbdF4eD
0.05074117 ETH
Transfer67522342018-11-22 14:43:282684 days ago1542897808
0xB927EDf8...E5CbdF4eD
0.05133757 ETH
Transfer67328782018-11-19 10:01:092687 days ago1542621669
0xB927EDf8...E5CbdF4eD
0.05102124 ETH
Transfer67165222018-11-16 17:49:532690 days ago1542390593
0xB927EDf8...E5CbdF4eD
0.0518127 ETH
Transfer66993612018-11-13 22:30:532693 days ago1542148253
0xB927EDf8...E5CbdF4eD
0.05012398 ETH
Transfer66852422018-11-11 14:59:432695 days ago1541948383
0xB927EDf8...E5CbdF4eD
0.05071664 ETH
Transfer66713102018-11-09 8:29:242697 days ago1541752164
0xB927EDf8...E5CbdF4eD
0.05007071 ETH
Transfer66558332018-11-06 19:34:222700 days ago1541532862
0xB927EDf8...E5CbdF4eD
0.05030467 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.