ETH Price: $2,535.90 (+4.23%)

Contract

0x3f1437A6803e10B8e2418fc93cdf496fa7Eb5d1B
 

Overview

ETH Balance

0.000000004890765449 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep76940382019-05-04 10:42:061966 days ago1556966526IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer76940162019-05-04 10:37:171966 days ago1556966237IN
0x3f1437A6...fa7Eb5d1B
1.00086061 ETH0.000021051
Sweep76735362019-05-01 6:18:031969 days ago1556691483IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer76735152019-05-01 6:13:231969 days ago1556691203IN
0x3f1437A6...fa7Eb5d1B
1.00138547 ETH0.000021051
Sweep76530302019-04-28 1:37:321972 days ago1556415452IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer76530132019-04-28 1:33:421972 days ago1556415222IN
0x3f1437A6...fa7Eb5d1B
1.00156076 ETH0.000021051
Sweep76326712019-04-24 22:05:281975 days ago1556143528IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer76326582019-04-24 22:02:121975 days ago1556143332IN
0x3f1437A6...fa7Eb5d1B
1.00132049 ETH0.000021051
Sweep76121542019-04-21 16:50:441978 days ago1555865444IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer76121332019-04-21 16:45:531978 days ago1555865153IN
0x3f1437A6...fa7Eb5d1B
1.00052166 ETH0.000021051
Sweep75916502019-04-18 12:18:441982 days ago1555589924IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer75916302019-04-18 12:13:421982 days ago1555589622IN
0x3f1437A6...fa7Eb5d1B
1.00025965 ETH0.000021051
Sweep75710642019-04-15 6:59:341985 days ago1555311574IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer75710392019-04-15 6:56:271985 days ago1555311387IN
0x3f1437A6...fa7Eb5d1B
1.00012648 ETH0.000021051
Sweep75509052019-04-12 4:08:021988 days ago1555042082IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer75508862019-04-12 4:04:571988 days ago1555041897IN
0x3f1437A6...fa7Eb5d1B
1.0002663 ETH0.000021051
Sweep75308902019-04-09 1:16:511991 days ago1554772611IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer75308692019-04-09 1:12:551991 days ago1554772375IN
0x3f1437A6...fa7Eb5d1B
1.00001653 ETH0.000021051
Sweep75111612019-04-05 23:50:461994 days ago1554508246IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer75111422019-04-05 23:48:061994 days ago1554508086IN
0x3f1437A6...fa7Eb5d1B
1.00069836 ETH0.000021051
Sweep75062652019-04-05 5:36:551995 days ago1554442615IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0023849550
Sweep74920212019-04-02 23:57:171997 days ago1554249437IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer74920032019-04-02 23:53:471997 days ago1554249227IN
0x3f1437A6...fa7Eb5d1B
1.00063452 ETH0.000021051
Sweep74728252019-03-30 23:57:192000 days ago1553990239IN
0x3f1437A6...fa7Eb5d1B
0 ETH0.0025028550
Transfer74728002019-03-30 23:53:432000 days ago1553990023IN
0x3f1437A6...fa7Eb5d1B
1.00092055 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
76940382019-05-04 10:42:061966 days ago1556966526
0x3f1437A6...fa7Eb5d1B
1.00086062 ETH
76735362019-05-01 6:18:031969 days ago1556691483
0x3f1437A6...fa7Eb5d1B
1.00138547 ETH
76530302019-04-28 1:37:321972 days ago1556415452
0x3f1437A6...fa7Eb5d1B
1.00156076 ETH
76326712019-04-24 22:05:281975 days ago1556143528
0x3f1437A6...fa7Eb5d1B
1.00132049 ETH
76121542019-04-21 16:50:441978 days ago1555865444
0x3f1437A6...fa7Eb5d1B
1.00052167 ETH
75916502019-04-18 12:18:441982 days ago1555589924
0x3f1437A6...fa7Eb5d1B
1.00025965 ETH
75710642019-04-15 6:59:341985 days ago1555311574
0x3f1437A6...fa7Eb5d1B
1.00012648 ETH
75509052019-04-12 4:08:021988 days ago1555042082
0x3f1437A6...fa7Eb5d1B
1.00026631 ETH
75308902019-04-09 1:16:511991 days ago1554772611
0x3f1437A6...fa7Eb5d1B
1.00001654 ETH
75111612019-04-05 23:50:461994 days ago1554508246
0x3f1437A6...fa7Eb5d1B
1.00069836 ETH
74920212019-04-02 23:57:171997 days ago1554249437
0x3f1437A6...fa7Eb5d1B
1.00063453 ETH
74728252019-03-30 23:57:192000 days ago1553990239
0x3f1437A6...fa7Eb5d1B
1.00092055 ETH
74530992019-03-27 21:37:342003 days ago1553722654
0x3f1437A6...fa7Eb5d1B
1.00140905 ETH
74339672019-03-24 22:04:302006 days ago1553465070
0x3f1437A6...fa7Eb5d1B
1.00025962 ETH
74150672019-03-21 23:24:402009 days ago1553210680
0x3f1437A6...fa7Eb5d1B
1.00044689 ETH
73961122019-03-19 0:41:562012 days ago1552956116
0x3f1437A6...fa7Eb5d1B
1.00041914 ETH
73756222019-03-15 20:03:562015 days ago1552680236
0x3f1437A6...fa7Eb5d1B
1.00090155 ETH
73547632019-03-12 14:16:332018 days ago1552400193
0x3f1437A6...fa7Eb5d1B
1.00051621 ETH
73337672019-03-09 7:49:402022 days ago1552117780
0x3f1437A6...fa7Eb5d1B
1.00059208 ETH
73123822019-03-05 23:45:402025 days ago1551829540
0x3f1437A6...fa7Eb5d1B
1.00166984 ETH
72915672019-03-02 17:45:002028 days ago1551548700
0x3f1437A6...fa7Eb5d1B
1.00038054 ETH
72738922019-02-27 9:34:482032 days ago1551260088
0x3f1437A6...fa7Eb5d1B
1.00164412 ETH
72594962019-02-24 0:17:392035 days ago1550967459
0x3f1437A6...fa7Eb5d1B
1.00079793 ETH
72457132019-02-20 19:10:322038 days ago1550689832
0x3f1437A6...fa7Eb5d1B
1.00020394 ETH
72321232019-02-17 13:50:472041 days ago1550411447
0x3f1437A6...fa7Eb5d1B
1.00105552 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.