ETH Price: $2,118.13 (+1.83%)

Contract

0xF460714d7f6C8b79939D17e4E9ebEaBec1DAA86B
 

Overview

ETH Balance

0.000000007841390345 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep83890382019-08-20 19:11:362388 days ago1566328296IN
0xF460714d...ec1DAA86B
0 ETH0.0010998422
Transfer83890172019-08-20 19:07:112388 days ago1566328031IN
0xF460714d...ec1DAA86B
0.05174984 ETH0.000021051
Sweep83439502019-08-13 19:08:572395 days ago1565723337IN
0xF460714d...ec1DAA86B
0 ETH0.0010998422
Transfer83439372019-08-13 19:05:342395 days ago1565723134IN
0xF460714d...ec1DAA86B
0.06215411 ETH0.000021051
Sweep82988622019-08-06 19:07:562402 days ago1565118476IN
0xF460714d...ec1DAA86B
0 ETH0.0011012522
Transfer82988502019-08-06 19:03:292402 days ago1565118209IN
0xF460714d...ec1DAA86B
0.06250735 ETH0.000021051
Transfer82537542019-07-30 18:58:482409 days ago1564513128IN
0xF460714d...ec1DAA86B
0.04193986 ETH0.000021051
Sweep82086772019-07-23 19:01:452416 days ago1563908505IN
0xF460714d...ec1DAA86B
0 ETH0.0010998422
Transfer82086612019-07-23 18:58:162416 days ago1563908296IN
0xF460714d...ec1DAA86B
0.06375964 ETH0.000021051
Sweep81636292019-07-16 18:58:202423 days ago1563303500IN
0xF460714d...ec1DAA86B
0 ETH0.0014997930
Transfer81636092019-07-16 18:55:122423 days ago1563303312IN
0xF460714d...ec1DAA86B
0.0632443 ETH0.000021051
Sweep81187832019-07-09 18:57:302430 days ago1562698650IN
0xF460714d...ec1DAA86B
0 ETH0.0010998422
Transfer81187662019-07-09 18:53:422430 days ago1562698422IN
0xF460714d...ec1DAA86B
0.06257522 ETH0.000021051
Sweep80738122019-07-02 18:55:032437 days ago1562093703IN
0xF460714d...ec1DAA86B
0 ETH0.0014997930
Transfer80737962019-07-02 18:50:492437 days ago1562093449IN
0xF460714d...ec1DAA86B
0.06601602 ETH0.000021051
Sweep80289132019-06-25 18:55:382444 days ago1561488938IN
0xF460714d...ec1DAA86B
0 ETH0.0010984322
Transfer80288892019-06-25 18:49:312444 days ago1561488571IN
0xF460714d...ec1DAA86B
0.06813504 ETH0.000021051
Sweep79840272019-06-18 18:50:072451 days ago1560883807IN
0xF460714d...ec1DAA86B
0 ETH0.0024996550
Transfer79840102019-06-18 18:46:512451 days ago1560883611IN
0xF460714d...ec1DAA86B
0.06999793 ETH0.000021051
Sweep79392432019-06-11 18:48:592458 days ago1560278939IN
0xF460714d...ec1DAA86B
0 ETH0.0025028550
Transfer79392232019-06-11 18:42:482458 days ago1560278568IN
0xF460714d...ec1DAA86B
0.05733307 ETH0.000021051
Transfer78945032019-06-04 18:40:442465 days ago1559673644IN
0xF460714d...ec1DAA86B
0.04338671 ETH0.000021051
Sweep78497072019-05-28 18:39:342472 days ago1559068774IN
0xF460714d...ec1DAA86B
0 ETH0.0024996550
Transfer78496902019-05-28 18:35:502472 days ago1559068550IN
0xF460714d...ec1DAA86B
0.06959385 ETH0.000021051
Sweep78048212019-05-21 18:36:162479 days ago1558463776IN
0xF460714d...ec1DAA86B
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-83890382019-08-20 19:11:362388 days ago1566328296
0xF460714d...ec1DAA86B
0.05174984 ETH
-83439502019-08-13 19:08:572395 days ago1565723337
0xF460714d...ec1DAA86B
0.06215412 ETH
-82988622019-08-06 19:07:562402 days ago1565118476
0xF460714d...ec1DAA86B
0.10444721 ETH
-82086772019-07-23 19:01:452416 days ago1563908505
0xF460714d...ec1DAA86B
0.06375965 ETH
-81636292019-07-16 18:58:202423 days ago1563303500
0xF460714d...ec1DAA86B
0.0632443 ETH
-81187832019-07-09 18:57:302430 days ago1562698650
0xF460714d...ec1DAA86B
0.06257523 ETH
-80738122019-07-02 18:55:032437 days ago1562093703
0xF460714d...ec1DAA86B
0.06601602 ETH
-80289132019-06-25 18:55:382444 days ago1561488938
0xF460714d...ec1DAA86B
0.06813505 ETH
-79840272019-06-18 18:50:072451 days ago1560883807
0xF460714d...ec1DAA86B
0.06999793 ETH
-79392432019-06-11 18:48:592458 days ago1560278939
0xF460714d...ec1DAA86B
0.10071979 ETH
-78497072019-05-28 18:39:342472 days ago1559068774
0xF460714d...ec1DAA86B
0.06959386 ETH
-78048212019-05-21 18:36:162479 days ago1558463776
0xF460714d...ec1DAA86B
0.07764135 ETH
-73752072019-03-15 18:24:282546 days ago1552674268
0xF460714d...ec1DAA86B
0.05943937 ETH
-73302132019-03-08 18:21:392553 days ago1552069299
0xF460714d...ec1DAA86B
0.07317913 ETH
-72853772019-03-01 18:20:022560 days ago1551464402
0xF460714d...ec1DAA86B
0.07206103 ETH
-72540652019-02-22 18:15:192567 days ago1550859319
0xF460714d...ec1DAA86B
0.07549837 ETH
-72245332019-02-15 18:17:032574 days ago1550254623
0xF460714d...ec1DAA86B
0.07276819 ETH
-71941572019-02-08 18:13:102581 days ago1549649590
0xF460714d...ec1DAA86B
0.08874853 ETH
-71598032019-02-01 18:11:052588 days ago1549044665
0xF460714d...ec1DAA86B
0.08063616 ETH
-71251802019-01-25 18:10:532595 days ago1548439853
0xF460714d...ec1DAA86B
0.07732746 ETH
-70884302019-01-18 18:11:102602 days ago1547835070
0xF460714d...ec1DAA86B
0.08072391 ETH
-70492682019-01-11 18:00:332609 days ago1547229633
0xF460714d...ec1DAA86B
0.10838472 ETH
-69279642018-12-21 17:57:032630 days ago1545415023
0xF460714d...ec1DAA86B
0.0942692 ETH
-68864312018-12-14 17:56:322637 days ago1544810192
0xF460714d...ec1DAA86B
0.08173335 ETH
-68439432018-12-07 17:48:262644 days ago1544204906
0xF460714d...ec1DAA86B
0.08254011 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.