ETH Price: $2,048.59 (+2.19%)

Contract

0x37aEfA4E834d0ebC9f0848bB5DC5C288967E80C3
 

Overview

ETH Balance

0.000000006368848528 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep109959792020-10-05 13:25:502001 days ago1601904350IN
0x37aEfA4E...8967E80C3
0 ETH0.0043080675.6
Transfer109959582020-10-05 13:21:512001 days ago1601904111IN
0x37aEfA4E...8967E80C3
0.09739576 ETH0.0006336330.1
Sweep108813732020-09-17 18:31:312019 days ago1600367491IN
0x37aEfA4E...8967E80C3
0 ETH0.03371232591.6
Transfer108804412020-09-17 15:12:102019 days ago1600355530IN
0x37aEfA4E...8967E80C3
0.20017069 ETH0.0006336330.1
Sweep107556382020-08-29 12:27:372038 days ago1598704057IN
0x37aEfA4E...8967E80C3
0 ETH0.0035729562.70000148
Transfer107556162020-08-29 12:24:352038 days ago1598703875IN
0x37aEfA4E...8967E80C3
0.29761988 ETH0.0006336330.1
Sweep104337342020-07-10 19:59:112088 days ago1594411151IN
0x37aEfA4E...8967E80C3
0 ETH0.0015385927
Transfer104337102020-07-10 19:53:292088 days ago1594410809IN
0x37aEfA4E...8967E80C3
1.00060675 ETH0.0006315330
Sweep101488302020-05-27 16:07:252132 days ago1590595645IN
0x37aEfA4E...8967E80C3
0 ETH0.0024788443.5
Transfer101488112020-05-27 16:03:102132 days ago1590595390IN
0x37aEfA4E...8967E80C3
1.00095123 ETH0.0006315330
Sweep99300692020-04-23 17:26:002166 days ago1587662760IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer99300452020-04-23 17:20:062166 days ago1587662406IN
0x37aEfA4E...8967E80C3
1.00009653 ETH0.0002105110
Sweep97219822020-03-22 14:56:172198 days ago1584888977IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer97219652020-03-22 14:52:432198 days ago1584888763IN
0x37aEfA4E...8967E80C3
1.00040496 ETH0.0002105110
Sweep95251752020-02-21 7:09:362229 days ago1582268976IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer95251572020-02-21 7:03:592229 days ago1582268639IN
0x37aEfA4E...8967E80C3
0.12209184 ETH0.0003157615
Sweep94991672020-02-17 7:01:322233 days ago1581922892IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer94991432020-02-17 6:56:172233 days ago1581922577IN
0x37aEfA4E...8967E80C3
0.20030619 ETH0.0003157615
Sweep94559862020-02-10 15:45:242239 days ago1581349524IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer94559642020-02-10 15:40:142239 days ago1581349214IN
0x37aEfA4E...8967E80C3
0.20006201 ETH0.0003157615
Sweep94185972020-02-04 21:35:512245 days ago1580852151IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer94185722020-02-04 21:30:442245 days ago1580851844IN
0x37aEfA4E...8967E80C3
0.20015899 ETH0.0003157615
Sweep93810872020-01-30 3:13:272251 days ago1580354007IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
Transfer93810692020-01-30 3:07:432251 days ago1580353663IN
0x37aEfA4E...8967E80C3
0.20060209 ETH0.0003157615
Sweep93432492020-01-24 7:52:052256 days ago1579852325IN
0x37aEfA4E...8967E80C3
0 ETH0.0012536722
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-109959792020-10-05 13:25:502001 days ago1601904350
0x37aEfA4E...8967E80C3
0.09739577 ETH
-108813732020-09-17 18:31:312019 days ago1600367491
0x37aEfA4E...8967E80C3
0.20017069 ETH
-107556382020-08-29 12:27:372038 days ago1598704057
0x37aEfA4E...8967E80C3
0.29761988 ETH
-104337342020-07-10 19:59:112088 days ago1594411151
0x37aEfA4E...8967E80C3
1.00060676 ETH
-101488302020-05-27 16:07:252132 days ago1590595645
0x37aEfA4E...8967E80C3
1.00095123 ETH
-99300692020-04-23 17:26:002166 days ago1587662760
0x37aEfA4E...8967E80C3
1.00009654 ETH
-97219822020-03-22 14:56:172198 days ago1584888977
0x37aEfA4E...8967E80C3
1.00040496 ETH
-95251752020-02-21 7:09:362229 days ago1582268976
0x37aEfA4E...8967E80C3
0.12209185 ETH
-94991672020-02-17 7:01:322233 days ago1581922892
0x37aEfA4E...8967E80C3
0.20030619 ETH
-94559862020-02-10 15:45:242239 days ago1581349524
0x37aEfA4E...8967E80C3
0.20006201 ETH
-94185972020-02-04 21:35:512245 days ago1580852151
0x37aEfA4E...8967E80C3
0.200159 ETH
-93810872020-01-30 3:13:272251 days ago1580354007
0x37aEfA4E...8967E80C3
0.2006021 ETH
-93432492020-01-24 7:52:052256 days ago1579852325
0x37aEfA4E...8967E80C3
0.20009758 ETH
-92976682020-01-17 8:31:522263 days ago1579249912
0x37aEfA4E...8967E80C3
0.20000902 ETH
-92523282020-01-10 9:49:552270 days ago1578649795
0x37aEfA4E...8967E80C3
0.20016176 ETH
-92037162020-01-02 23:16:012278 days ago1578006961
0x37aEfA4E...8967E80C3
0.20014386 ETH
-90635752019-12-07 1:28:592305 days ago1575682139
0x37aEfA4E...8967E80C3
0.20019775 ETH
-90080672019-11-27 5:05:352315 days ago1574831135
0x37aEfA4E...8967E80C3
0.20006748 ETH
-89667772019-11-20 6:13:212322 days ago1574230401
0x37aEfA4E...8967E80C3
0.20005193 ETH
-89265232019-11-13 12:57:502328 days ago1573649870
0x37aEfA4E...8967E80C3
0.20000268 ETH
-88796382019-11-05 20:20:542336 days ago1572985254
0x37aEfA4E...8967E80C3
0.20025374 ETH
-88289222019-10-28 16:35:152344 days ago1572280515
0x37aEfA4E...8967E80C3
0.20009678 ETH
-87821762019-10-21 5:50:572352 days ago1571637057
0x37aEfA4E...8967E80C3
0.20008155 ETH
-86961152019-10-07 16:56:112365 days ago1570467371
0x37aEfA4E...8967E80C3
0.20016669 ETH
-86552702019-10-01 7:54:292371 days ago1569916469
0x37aEfA4E...8967E80C3
0.20028246 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.