ETH Price: $3,478.09 (+0.85%)

Contract

0x4ffD7804ddD7F2a1731fB200D1D4fe2740AB4a39
 

Overview

ETH Balance

0.039051970873523301 ETH

Eth Value

$135.83 (@ $3,478.09/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer68653982018-12-11 6:31:282206 days ago1544509888IN
0x4ffD7804...740AB4a39
0.02722866 ETH0.000021051
Transfer68230042018-12-04 6:24:062213 days ago1543904646IN
0x4ffD7804...740AB4a39
0.0118233 ETH0.000021051
Sweep67740792018-11-26 4:16:522221 days ago1543205812IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer67740572018-11-26 4:12:422221 days ago1543205562IN
0x4ffD7804...740AB4a39
0.18219513 ETH0.000021051
Sweep67314382018-11-19 4:13:462228 days ago1542600826IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer67313722018-11-19 4:01:372228 days ago1542600097IN
0x4ffD7804...740AB4a39
1.00082332 ETH0.000021051
Sweep67249222018-11-18 2:54:462229 days ago1542509686IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer67248952018-11-18 2:48:262229 days ago1542509306IN
0x4ffD7804...740AB4a39
1.00093164 ETH0.000021051
Sweep67183922018-11-17 1:09:432230 days ago1542416983IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer67183742018-11-17 1:04:282230 days ago1542416668IN
0x4ffD7804...740AB4a39
1.00071572 ETH0.000021051
Sweep67118502018-11-15 23:42:232231 days ago1542325343IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer67118332018-11-15 23:39:512231 days ago1542325191IN
0x4ffD7804...740AB4a39
1.0024758 ETH0.000021051
Sweep67051432018-11-14 21:14:212232 days ago1542230061IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer67051242018-11-14 21:09:432232 days ago1542229783IN
0x4ffD7804...740AB4a39
1.00007377 ETH0.000021051
Sweep66984962018-11-13 19:06:572233 days ago1542136017IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer66984812018-11-13 19:02:192233 days ago1542135739IN
0x4ffD7804...740AB4a39
1.00068039 ETH0.000021051
Sweep66919402018-11-12 17:17:472234 days ago1542043067IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer66919132018-11-12 17:13:492234 days ago1542042829IN
0x4ffD7804...740AB4a39
1.00299698 ETH0.000021051
Sweep66852162018-11-11 14:54:492235 days ago1541948089IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer66851042018-11-11 14:31:142235 days ago1541946674IN
0x4ffD7804...740AB4a39
1.00469415 ETH0.000021051
Sweep66783612018-11-10 12:13:562237 days ago1541852036IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer66783442018-11-10 12:09:372237 days ago1541851777IN
0x4ffD7804...740AB4a39
1.00304496 ETH0.000021051
Sweep66720872018-11-09 11:25:052238 days ago1541762705IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
Transfer66720642018-11-09 11:21:572238 days ago1541762517IN
0x4ffD7804...740AB4a39
1.00257936 ETH0.000021051
Sweep66655752018-11-08 9:46:322239 days ago1541670392IN
0x4ffD7804...740AB4a39
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
67740792018-11-26 4:16:522221 days ago1543205812
0x4ffD7804...740AB4a39
0.18219514 ETH
67314382018-11-19 4:13:462228 days ago1542600826
0x4ffD7804...740AB4a39
1.00082333 ETH
67249222018-11-18 2:54:462229 days ago1542509686
0x4ffD7804...740AB4a39
1.00093164 ETH
67183922018-11-17 1:09:432230 days ago1542416983
0x4ffD7804...740AB4a39
1.00071572 ETH
67118502018-11-15 23:42:232231 days ago1542325343
0x4ffD7804...740AB4a39
1.0024758 ETH
67051432018-11-14 21:14:212232 days ago1542230061
0x4ffD7804...740AB4a39
1.00007378 ETH
66984962018-11-13 19:06:572233 days ago1542136017
0x4ffD7804...740AB4a39
1.0006804 ETH
66919402018-11-12 17:17:472234 days ago1542043067
0x4ffD7804...740AB4a39
1.00299699 ETH
66852162018-11-11 14:54:492235 days ago1541948089
0x4ffD7804...740AB4a39
1.00469415 ETH
66783612018-11-10 12:13:562237 days ago1541852036
0x4ffD7804...740AB4a39
1.00304497 ETH
66720872018-11-09 11:25:052238 days ago1541762705
0x4ffD7804...740AB4a39
1.00257936 ETH
66655752018-11-08 9:46:322239 days ago1541670392
0x4ffD7804...740AB4a39
1.00019529 ETH
66589522018-11-07 7:57:412240 days ago1541577461
0x4ffD7804...740AB4a39
1.00048719 ETH
66522222018-11-06 5:14:072241 days ago1541481247
0x4ffD7804...740AB4a39
1.00167479 ETH
66458402018-11-05 4:00:442242 days ago1541390444
0x4ffD7804...740AB4a39
1.00103581 ETH
66394292018-11-04 2:43:272243 days ago1541299407
0x4ffD7804...740AB4a39
1.00598597 ETH
66327532018-11-03 0:34:222244 days ago1541205262
0x4ffD7804...740AB4a39
1.00074162 ETH
66263262018-11-01 23:06:472245 days ago1541113607
0x4ffD7804...740AB4a39
1.00404131 ETH
66181832018-10-31 15:02:592246 days ago1540998179
0x4ffD7804...740AB4a39
1.00421434 ETH
66109392018-10-30 10:33:142248 days ago1540895594
0x4ffD7804...740AB4a39
1.00486952 ETH
66043152018-10-29 8:39:092249 days ago1540802349
0x4ffD7804...740AB4a39
1.00026579 ETH
65975742018-10-28 6:04:492250 days ago1540706689
0x4ffD7804...740AB4a39
1.00108251 ETH
65907542018-10-27 3:10:142251 days ago1540609814
0x4ffD7804...740AB4a39
1.0034431 ETH
65841082018-10-26 1:09:062252 days ago1540516146
0x4ffD7804...740AB4a39
1.00188898 ETH
65776452018-10-24 23:51:552253 days ago1540425115
0x4ffD7804...740AB4a39
1.00256286 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.