ETH Price: $2,053.96 (+1.76%)

Contract

0xEf98958A67dd540Bfc00968B20a8D2dC8319Ca6a
 

Overview

ETH Balance

0.015283718961178285 ETH

Eth Value

$31.39 (@ $2,053.96/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer71010702019-01-20 23:55:102605 days ago1548028510IN
0xEf98958A...C8319Ca6a
0.01528371 ETH0.000021051
Sweep70618262019-01-13 23:54:432612 days ago1547423683IN
0xEf98958A...C8319Ca6a
0 ETH0.0025028550
Transfer70618062019-01-13 23:49:502612 days ago1547423390IN
0xEf98958A...C8319Ca6a
0.030918 ETH0.000021051
Transfer70227112019-01-06 23:48:112619 days ago1546818491IN
0xEf98958A...C8319Ca6a
0.04607275 ETH0.000021051
Sweep69826452018-12-30 23:50:242626 days ago1546213824IN
0xEf98958A...C8319Ca6a
0 ETH0.0024996550
Transfer69826292018-12-30 23:47:322626 days ago1546213652IN
0xEf98958A...C8319Ca6a
0.04553674 ETH0.000021051
Transfer69411162018-12-23 23:41:272633 days ago1545608487IN
0xEf98958A...C8319Ca6a
0.02599912 ETH0.000021051
Sweep69000552018-12-16 23:45:582640 days ago1545003958IN
0xEf98958A...C8319Ca6a
0 ETH0.0025028550
Transfer69000352018-12-16 23:40:522640 days ago1545003652IN
0xEf98958A...C8319Ca6a
0.02601433 ETH0.000021051
Transfer68575122018-12-09 23:38:292647 days ago1544398709IN
0xEf98958A...C8319Ca6a
0.02463991 ETH0.000021051
Transfer68152832018-12-02 23:37:222654 days ago1543793842IN
0xEf98958A...C8319Ca6a
0.02370718 ETH0.000021051
Sweep67729082018-11-25 23:41:402661 days ago1543189300IN
0xEf98958A...C8319Ca6a
0 ETH0.0024996550
Transfer67728832018-11-25 23:36:472661 days ago1543189007IN
0xEf98958A...C8319Ca6a
0.02112689 ETH0.000021051
Transfer67302572018-11-18 23:27:522668 days ago1542583672IN
0xEf98958A...C8319Ca6a
0.02639004 ETH0.000021051
Transfer66873742018-11-11 23:24:292675 days ago1541978669IN
0xEf98958A...C8319Ca6a
0.01001725 ETH0.000021051
Sweep66059062018-10-29 14:51:422688 days ago1540824702IN
0xEf98958A...C8319Ca6a
0 ETH0.0024996550
Transfer66058592018-10-29 14:40:552688 days ago1540824055IN
0xEf98958A...C8319Ca6a
0.01573143 ETH0.000021051
Transfer65629892018-10-22 14:32:302695 days ago1540218750IN
0xEf98958A...C8319Ca6a
0.03851611 ETH0.000021051
Sweep65201742018-10-15 14:32:452702 days ago1539613965IN
0xEf98958A...C8319Ca6a
0 ETH0.0025028550
Transfer65201572018-10-15 14:28:522702 days ago1539613732IN
0xEf98958A...C8319Ca6a
0.04115202 ETH0.000021051
Transfer64770792018-10-08 14:29:092709 days ago1539008949IN
0xEf98958A...C8319Ca6a
0.04742382 ETH0.000021051
Sweep64339202018-10-01 14:32:592716 days ago1538404379IN
0xEf98958A...C8319Ca6a
0 ETH0.0025028550
Transfer64338912018-10-01 14:24:252716 days ago1538403865IN
0xEf98958A...C8319Ca6a
0.04796201 ETH0.000021051
Transfer63912502018-09-24 14:23:132723 days ago1537798993IN
0xEf98958A...C8319Ca6a
0.04624151 ETH0.000021051
Sweep63488062018-09-17 14:26:142730 days ago1537194374IN
0xEf98958A...C8319Ca6a
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-70618262019-01-13 23:54:432612 days ago1547423683
0xEf98958A...C8319Ca6a
0.07699076 ETH
-69826452018-12-30 23:50:242626 days ago1546213824
0xEf98958A...C8319Ca6a
0.07153587 ETH
-69000552018-12-16 23:45:582640 days ago1545003958
0xEf98958A...C8319Ca6a
0.07436144 ETH
Transfer67729082018-11-25 23:41:402661 days ago1543189300
0xEf98958A...C8319Ca6a
0.05753419 ETH
Transfer66059062018-10-29 14:51:422688 days ago1540824702
0xEf98958A...C8319Ca6a
0.05424755 ETH
Transfer65201742018-10-15 14:32:452702 days ago1539613965
0xEf98958A...C8319Ca6a
0.08857585 ETH
Transfer64339202018-10-01 14:32:592716 days ago1538404379
0xEf98958A...C8319Ca6a
0.09420353 ETH
Transfer63488062018-09-17 14:26:142730 days ago1537194374
0xEf98958A...C8319Ca6a
0.0954861 ETH
Transfer62647842018-09-03 14:17:292744 days ago1535984249
0xEf98958A...C8319Ca6a
0.08816219 ETH
Transfer61827282018-08-20 17:59:122758 days ago1534787952
0xEf98958A...C8319Ca6a
0.09243746 ETH
Transfer60989692018-08-06 13:53:322772 days ago1533563612
0xEf98958A...C8319Ca6a
0.08305605 ETH
Transfer60161562018-07-23 13:57:092786 days ago1532354229
0xEf98958A...C8319Ca6a
0.07386933 ETH
Transfer59334282018-07-09 13:42:442800 days ago1531143764
0xEf98958A...C8319Ca6a
0.09215249 ETH
Transfer58520102018-06-25 13:33:332814 days ago1529933613
0xEf98958A...C8319Ca6a
0.08996321 ETH
Transfer57703842018-06-11 13:17:332828 days ago1528723053
0xEf98958A...C8319Ca6a
0.09299398 ETH
Transfer56914912018-05-28 13:04:472843 days ago1527512687
0xEf98958A...C8319Ca6a
0.09328638 ETH
Transfer56122892018-05-14 12:55:422857 days ago1526302542
0xEf98958A...C8319Ca6a
0.09390629 ETH
Transfer55321552018-04-30 12:38:442871 days ago1525091924
0xEf98958A...C8319Ca6a
0.09714156 ETH
Transfer54509592018-04-16 12:42:182885 days ago1523882538
0xEf98958A...C8319Ca6a
0.0501172 ETH
Transfer54274182018-04-12 13:08:212889 days ago1523538501
0xEf98958A...C8319Ca6a
0.13381338 ETH
Transfer53670292018-04-02 12:34:182899 days ago1522672458
0xEf98958A...C8319Ca6a
0.09541739 ETH
Transfer52834792018-03-19 13:26:442912 days ago1521466004
0xEf98958A...C8319Ca6a
0.09798806 ETH
Transfer52009682018-03-05 13:09:052926 days ago1520255345
0xEf98958A...C8319Ca6a
0.05107794 ETH
Transfer51597112018-02-26 13:06:132934 days ago1519650373
0xEf98958A...C8319Ca6a
0.05382221 ETH
Transfer51187122018-02-19 13:03:502941 days ago1519045430
0xEf98958A...C8319Ca6a
0.0524331 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.