ETH Price: $2,065.81 (+3.62%)

Contract

0x35A20b99a300d9D268aF2bC7DCA11c4F0B2c2CD7
 

Overview

ETH Balance

0.016093153903347289 ETH

Eth Value

$33.25 (@ $2,065.81/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer79715342019-06-16 19:58:442478 days ago1560715124IN
0x35A20b99...F0B2c2CD7
0.01609314 ETH0.000021051
Sweep79267372019-06-09 19:59:022485 days ago1560110342IN
0x35A20b99...F0B2c2CD7
0 ETH0.0024996550
Transfer79267242019-06-09 19:56:022485 days ago1560110162IN
0x35A20b99...F0B2c2CD7
0.05745704 ETH0.000021051
Sweep78821012019-06-02 19:58:362492 days ago1559505516IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer78820782019-06-02 19:54:422492 days ago1559505282IN
0x35A20b99...F0B2c2CD7
0.10518851 ETH0.000021051
Sweep78372372019-05-26 19:55:412499 days ago1558900541IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer78372142019-05-26 19:51:252499 days ago1558900285IN
0x35A20b99...F0B2c2CD7
0.10676832 ETH0.000021051
Sweep77924992019-05-19 19:51:322506 days ago1558295492IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer77924752019-05-19 19:46:452506 days ago1558295205IN
0x35A20b99...F0B2c2CD7
0.11153201 ETH0.000021051
Sweep77476032019-05-12 19:47:132513 days ago1557690433IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer77475882019-05-12 19:43:462513 days ago1557690226IN
0x35A20b99...F0B2c2CD7
0.13330479 ETH0.000021051
Sweep77028532019-05-05 19:44:282520 days ago1557085468IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer77028362019-05-05 19:40:492520 days ago1557085249IN
0x35A20b99...F0B2c2CD7
0.12053833 ETH0.000021051
Sweep76578462019-04-28 19:40:282527 days ago1556480428IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer76578312019-04-28 19:37:032527 days ago1556480223IN
0x35A20b99...F0B2c2CD7
0.13948575 ETH0.000021051
Sweep76129122019-04-21 19:38:032534 days ago1555875483IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer76128902019-04-21 19:34:172534 days ago1555875257IN
0x35A20b99...F0B2c2CD7
0.13783817 ETH0.000021051
Sweep75679682019-04-14 19:30:422541 days ago1555270242IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer75679492019-04-14 19:27:252541 days ago1555270045IN
0x35A20b99...F0B2c2CD7
0.142647 ETH0.000021051
Sweep75229242019-04-07 19:30:252548 days ago1554665425IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer75229082019-04-07 19:26:332548 days ago1554665193IN
0x35A20b99...F0B2c2CD7
0.14462549 ETH0.000021051
Sweep74780082019-03-31 19:26:442555 days ago1554060404IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer74779902019-03-31 19:23:262555 days ago1554060206IN
0x35A20b99...F0B2c2CD7
0.14881019 ETH0.000021051
Sweep74332312019-03-24 19:19:462562 days ago1553455186IN
0x35A20b99...F0B2c2CD7
0 ETH0.0025028550
Transfer74332142019-03-24 19:17:072562 days ago1553455027IN
0x35A20b99...F0B2c2CD7
0.14238932 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-79267372019-06-09 19:59:022485 days ago1560110342
0x35A20b99...F0B2c2CD7
0.05745704 ETH
-78821012019-06-02 19:58:362492 days ago1559505516
0x35A20b99...F0B2c2CD7
0.10518852 ETH
-78372372019-05-26 19:55:412499 days ago1558900541
0x35A20b99...F0B2c2CD7
0.10676832 ETH
-77924992019-05-19 19:51:322506 days ago1558295492
0x35A20b99...F0B2c2CD7
0.11153201 ETH
-77476032019-05-12 19:47:132513 days ago1557690433
0x35A20b99...F0B2c2CD7
0.1333048 ETH
-77028532019-05-05 19:44:282520 days ago1557085468
0x35A20b99...F0B2c2CD7
0.12053833 ETH
-76578462019-04-28 19:40:282527 days ago1556480428
0x35A20b99...F0B2c2CD7
0.13948575 ETH
-76129122019-04-21 19:38:032534 days ago1555875483
0x35A20b99...F0B2c2CD7
0.13783817 ETH
-75679682019-04-14 19:30:422541 days ago1555270242
0x35A20b99...F0B2c2CD7
0.142647 ETH
-75229242019-04-07 19:30:252548 days ago1554665425
0x35A20b99...F0B2c2CD7
0.1446255 ETH
-74780082019-03-31 19:26:442555 days ago1554060404
0x35A20b99...F0B2c2CD7
0.14881019 ETH
-74332312019-03-24 19:19:462562 days ago1553455186
0x35A20b99...F0B2c2CD7
0.14238933 ETH
-73883192019-03-17 19:13:442569 days ago1552850024
0x35A20b99...F0B2c2CD7
0.13752624 ETH
-73432442019-03-10 19:08:142576 days ago1552244894
0x35A20b99...F0B2c2CD7
0.13172208 ETH
-72983242019-03-03 19:07:062583 days ago1551640026
0x35A20b99...F0B2c2CD7
0.13361861 ETH
-72628302019-02-24 19:02:472590 days ago1551034967
0x35A20b99...F0B2c2CD7
0.13541725 ETH
-72330372019-02-17 19:02:172597 days ago1550430137
0x35A20b99...F0B2c2CD7
0.14210228 ETH
-72036632019-02-10 19:03:092604 days ago1549825389
0x35A20b99...F0B2c2CD7
0.08413401 ETH
-71697072019-02-03 18:58:532611 days ago1549220333
0x35A20b99...F0B2c2CD7
0.15320856 ETH
-71354372019-01-27 18:49:282618 days ago1548614968
0x35A20b99...F0B2c2CD7
0.13474552 ETH
-70998482019-01-20 18:44:252625 days ago1548009865
0x35A20b99...F0B2c2CD7
0.1488884 ETH
-70605542019-01-13 18:41:552632 days ago1547404915
0x35A20b99...F0B2c2CD7
0.14211874 ETH
-70214712019-01-06 18:34:522639 days ago1546799692
0x35A20b99...F0B2c2CD7
0.15303234 ETH
-69813352018-12-30 18:33:532646 days ago1546194833
0x35A20b99...F0B2c2CD7
0.16084121 ETH
-69398332018-12-23 18:27:132653 days ago1545589633
0x35A20b99...F0B2c2CD7
0.17647166 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.