ETH Price: $3,290.82 (-10.53%)

Contract

0x37515B8b73721deF9f4A7ef94691Ba7695e537f9
 

Overview

ETH Balance

0.000000001573373796 ETH

Eth Value

Less Than $0.01 (@ $3,290.82/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep65300422018-10-17 5:15:512256 days ago1539753351IN
0x37515B8b...695e537f9
0 ETH0.0024996550
Transfer65300122018-10-17 5:07:152256 days ago1539752835IN
0x37515B8b...695e537f9
0.05166219 ETH0.000021051
Sweep64870062018-10-10 5:13:592263 days ago1539148439IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer64869832018-10-10 5:08:142263 days ago1539148094IN
0x37515B8b...695e537f9
0.100053 ETH0.000021051
Sweep64651512018-10-06 16:30:282266 days ago1538843428IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer64651292018-10-06 16:25:162266 days ago1538843116IN
0x37515B8b...695e537f9
0.10006391 ETH0.000021051
Sweep64424772018-10-02 23:44:482270 days ago1538523888IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer64424532018-10-02 23:38:272270 days ago1538523507IN
0x37515B8b...695e537f9
0.10001921 ETH0.000021051
Sweep64192922018-09-29 4:55:172274 days ago1538196917IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer64192722018-09-29 4:50:212274 days ago1538196621IN
0x37515B8b...695e537f9
0.10000451 ETH0.000021051
Sweep63974192018-09-25 14:46:372277 days ago1537886797IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer63973892018-09-25 14:40:012277 days ago1537886401IN
0x37515B8b...695e537f9
0.10007094 ETH0.000021051
Sweep63754422018-09-21 23:52:132281 days ago1537573933IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer63754072018-09-21 23:44:392281 days ago1537573479IN
0x37515B8b...695e537f9
0.10000727 ETH0.000021051
Sweep63534502018-09-18 8:39:302285 days ago1537259970IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer63534192018-09-18 8:31:502285 days ago1537259510IN
0x37515B8b...695e537f9
0.10004689 ETH0.000021051
Sweep63324612018-09-14 21:49:202288 days ago1536961760IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer63324262018-09-14 21:40:412288 days ago1536961241IN
0x37515B8b...695e537f9
0.10006046 ETH0.000021051
Sweep63113912018-09-11 9:46:412291 days ago1536659201IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer63113442018-09-11 9:34:152292 days ago1536658455IN
0x37515B8b...695e537f9
0.10003559 ETH0.000021051
Sweep62903032018-09-07 20:50:542295 days ago1536353454IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer62902842018-09-07 20:44:122295 days ago1536353052IN
0x37515B8b...695e537f9
0.10007358 ETH0.000021051
Sweep62680842018-09-04 3:30:172299 days ago1536031817IN
0x37515B8b...695e537f9
0 ETH0.0025028550
Transfer62680682018-09-04 3:26:312299 days ago1536031591IN
0x37515B8b...695e537f9
0.1000746 ETH0.000021051
Sweep62456842018-08-31 9:00:262303 days ago1535706026IN
0x37515B8b...695e537f9
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
65300422018-10-17 5:15:512256 days ago1539753351
0x37515B8b...695e537f9
0.05166219 ETH
64870062018-10-10 5:13:592263 days ago1539148439
0x37515B8b...695e537f9
0.10005301 ETH
64651512018-10-06 16:30:282266 days ago1538843428
0x37515B8b...695e537f9
0.10006392 ETH
64424772018-10-02 23:44:482270 days ago1538523888
0x37515B8b...695e537f9
0.10001921 ETH
64192922018-09-29 4:55:172274 days ago1538196917
0x37515B8b...695e537f9
0.10000452 ETH
63974192018-09-25 14:46:372277 days ago1537886797
0x37515B8b...695e537f9
0.10007094 ETH
63754422018-09-21 23:52:132281 days ago1537573933
0x37515B8b...695e537f9
0.10000727 ETH
63534502018-09-18 8:39:302285 days ago1537259970
0x37515B8b...695e537f9
0.10004689 ETH
63324612018-09-14 21:49:202288 days ago1536961760
0x37515B8b...695e537f9
0.10006047 ETH
63113912018-09-11 9:46:412291 days ago1536659201
0x37515B8b...695e537f9
0.1000356 ETH
62903032018-09-07 20:50:542295 days ago1536353454
0x37515B8b...695e537f9
0.10007358 ETH
62680842018-09-04 3:30:172299 days ago1536031817
0x37515B8b...695e537f9
0.10007461 ETH
62456842018-08-31 9:00:262303 days ago1535706026
0x37515B8b...695e537f9
0.10007512 ETH
62222122018-08-27 9:51:202306 days ago1535363480
0x37515B8b...695e537f9
0.10001408 ETH
61998752018-08-23 15:24:142310 days ago1535037854
0x37515B8b...695e537f9
0.10002961 ETH
61774302018-08-19 20:18:322314 days ago1534709912
0x37515B8b...695e537f9
0.10001391 ETH
61556412018-08-16 3:51:252318 days ago1534391485
0x37515B8b...695e537f9
0.1000014 ETH
61324332018-08-12 5:39:482322 days ago1534052388
0x37515B8b...695e537f9
0.10001971 ETH
61106282018-08-08 13:10:552325 days ago1533733855
0x37515B8b...695e537f9
0.10002788 ETH
60882562018-08-04 18:35:072329 days ago1533407707
0x37515B8b...695e537f9
0.10005408 ETH
60642972018-07-31 17:20:302333 days ago1533057630
0x37515B8b...695e537f9
0.10005943 ETH
60394442018-07-27 13:23:032337 days ago1532697783
0x37515B8b...695e537f9
0.10018532 ETH
60170092018-07-23 17:23:582341 days ago1532366638
0x37515B8b...695e537f9
0.10020642 ETH
59954952018-07-20 2:10:222345 days ago1532052622
0x37515B8b...695e537f9
0.10000816 ETH
59732802018-07-16 6:34:442349 days ago1531722884
0x37515B8b...695e537f9
0.10011208 ETH
View All Internal Transactions
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
/**
 *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

[{"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"}]

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.