ETH Price: $2,107.78 (+3.32%)

Contract

0x53D766DFdAC81D88C433FE510a1a41CD9e2f30fe
 

Overview

ETH Balance

0.000000005590446288 ETH

Eth Value

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

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep78232252019-05-24 15:41:572503 days ago1558712517IN
0x53D766DF...D9e2f30fe
0 ETH0.0023519550
Sweep78231692019-05-24 15:30:252503 days ago1558711825IN
0x53D766DF...D9e2f30fe
0 ETH0.0023487550
Sweep78230572019-05-24 15:04:462503 days ago1558710286IN
0x53D766DF...D9e2f30fe
0 ETH0.0023519550
Sweep78229512019-05-24 14:46:032503 days ago1558709163IN
0x53D766DF...D9e2f30fe
0 ETH0.0023487550
Sweep78049412019-05-21 19:01:252505 days ago1558465285IN
0x53D766DF...D9e2f30fe
0 ETH0.0023487550
Sweep74879982019-04-02 8:59:022555 days ago1554195542IN
0x53D766DF...D9e2f30fe
0 ETH0.0023361550
Sweep66291112018-11-02 10:20:522706 days ago1541154052IN
0x53D766DF...D9e2f30fe
0 ETH0.0023817550
Sweep66286652018-11-02 8:40:472706 days ago1541148047IN
0x53D766DF...D9e2f30fe
0 ETH0.0023785550
Sweep54778262018-04-21 3:41:012901 days ago1524282061IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer54778102018-04-21 3:37:042901 days ago1524281824IN
0x53D766DF...D9e2f30fe
0.05003631 ETH0.000021051
Sweep54527662018-04-16 20:12:022905 days ago1523909522IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer54527302018-04-16 20:04:502905 days ago1523909090IN
0x53D766DF...D9e2f30fe
0.05007907 ETH0.000021051
Sweep54361752018-04-14 0:49:302908 days ago1523666970IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer54361472018-04-14 0:41:582908 days ago1523666518IN
0x53D766DF...D9e2f30fe
0.05022726 ETH0.000021051
Sweep54136672018-04-10 6:05:362912 days ago1523340336IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer54136322018-04-10 5:58:212912 days ago1523339901IN
0x53D766DF...D9e2f30fe
0.05004566 ETH0.000021051
Sweep53887252018-04-06 3:00:392916 days ago1522983639IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer53886762018-04-06 2:48:462916 days ago1522982926IN
0x53D766DF...D9e2f30fe
0.05049722 ETH0.000021051
Sweep53711292018-04-03 4:51:022919 days ago1522731062IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer53710792018-04-03 4:38:552919 days ago1522730335IN
0x53D766DF...D9e2f30fe
0.05029281 ETH0.000021051
Sweep53403802018-03-29 1:47:322924 days ago1522288052IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer53403532018-03-29 1:38:312924 days ago1522287511IN
0x53D766DF...D9e2f30fe
0.05009957 ETH0.000021051
Sweep53226612018-03-26 2:21:222927 days ago1522030882IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
Transfer53226302018-03-26 2:13:152927 days ago1522030395IN
0x53D766DF...D9e2f30fe
0.05006644 ETH0.000021051
Sweep53044782018-03-23 1:46:592930 days ago1521769619IN
0x53D766DF...D9e2f30fe
0 ETH0.0024996550
View all transactions

Latest 15 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer54778262018-04-21 3:41:012901 days ago1524282061
0x53D766DF...D9e2f30fe
0.05003631 ETH
Transfer54527662018-04-16 20:12:022905 days ago1523909522
0x53D766DF...D9e2f30fe
0.05007908 ETH
Transfer54361752018-04-14 0:49:302908 days ago1523666970
0x53D766DF...D9e2f30fe
0.05022726 ETH
Transfer54136672018-04-10 6:05:362912 days ago1523340336
0x53D766DF...D9e2f30fe
0.05004567 ETH
Transfer53887252018-04-06 3:00:392916 days ago1522983639
0x53D766DF...D9e2f30fe
0.05049722 ETH
Transfer53711292018-04-03 4:51:022919 days ago1522731062
0x53D766DF...D9e2f30fe
0.05029282 ETH
Transfer53403802018-03-29 1:47:322924 days ago1522288052
0x53D766DF...D9e2f30fe
0.05009958 ETH
Transfer53226612018-03-26 2:21:222927 days ago1522030882
0x53D766DF...D9e2f30fe
0.05006644 ETH
Transfer53044782018-03-23 1:46:592930 days ago1521769619
0x53D766DF...D9e2f30fe
0.05002348 ETH
Transfer52875772018-03-20 5:50:572933 days ago1521525057
0x53D766DF...D9e2f30fe
0.05020776 ETH
Transfer52693342018-03-17 4:02:162936 days ago1521259336
0x53D766DF...D9e2f30fe
0.05011791 ETH
Transfer52527282018-03-14 8:05:582939 days ago1521014758
0x53D766DF...D9e2f30fe
0.05043542 ETH
Transfer48494922018-01-03 22:09:503008 days ago1515017390
0x53D766DF...D9e2f30fe
0.06712324 ETH
Transfer47440822017-12-16 18:25:003026 days ago1513448700
0x53D766DF...D9e2f30fe
0.05057608 ETH
Transfer47371092017-12-15 13:22:203028 days ago1513344140  Contract Creation0 ETH
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.