ETH Price: $2,180.08 (-4.64%)

Contract

0x199650f61FF51D5480Bc0ceFc1920c8aCb845D30
 

Overview

ETH Balance

0.000000005654150412 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep72034832019-02-10 17:53:142216 days ago1549821194IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer72034572019-02-10 17:47:122216 days ago1549820832IN
0x199650f6...aCb845D30
0.12715963 ETH0.000021051
Sweep71694642019-02-03 17:46:572223 days ago1549216017IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71694492019-02-03 17:40:492223 days ago1549215649IN
0x199650f6...aCb845D30
0.20070363 ETH0.000021051
Sweep71628872019-02-02 9:27:592224 days ago1549099679IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71628662019-02-02 9:22:292224 days ago1549099349IN
0x199650f6...aCb845D30
0.20000055 ETH0.000021051
Sweep71563552019-02-01 1:03:212226 days ago1548983001IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71563362019-02-01 1:00:012226 days ago1548982801IN
0x199650f6...aCb845D30
0.20219227 ETH0.000021051
Sweep71497262019-01-30 17:00:372227 days ago1548867637IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71497112019-01-30 16:56:342227 days ago1548867394IN
0x199650f6...aCb845D30
0.20034808 ETH0.000021051
Sweep71433052019-01-29 9:29:512228 days ago1548754191IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71432882019-01-29 9:25:102228 days ago1548753910IN
0x199650f6...aCb845D30
0.20029268 ETH0.000021051
Sweep71365962019-01-28 0:26:572230 days ago1548635217IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71365812019-01-28 0:21:382230 days ago1548634898IN
0x199650f6...aCb845D30
0.20021312 ETH0.000021051
Sweep71291022019-01-26 12:49:372231 days ago1548506977IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71290882019-01-26 12:45:222231 days ago1548506722IN
0x199650f6...aCb845D30
0.20031028 ETH0.000021051
Sweep71215002019-01-25 0:43:502233 days ago1548377030IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71214732019-01-25 0:38:022233 days ago1548376682IN
0x199650f6...aCb845D30
0.20027885 ETH0.000021051
Sweep71135452019-01-23 11:15:032234 days ago1548242103IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71135272019-01-23 11:10:002234 days ago1548241800IN
0x199650f6...aCb845D30
0.20026157 ETH0.000021051
Sweep71051262019-01-21 19:13:492236 days ago1548098029IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer71051002019-01-21 19:07:212236 days ago1548097641IN
0x199650f6...aCb845D30
0.20003746 ETH0.000021051
Sweep70970022019-01-20 6:31:092238 days ago1547965869IN
0x199650f6...aCb845D30
0 ETH0.0025028550
Transfer70969872019-01-20 6:27:302238 days ago1547965650IN
0x199650f6...aCb845D30
0.20050326 ETH0.000021051
Sweep70886342019-01-18 19:03:372239 days ago1547838217IN
0x199650f6...aCb845D30
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-72034832019-02-10 17:53:142216 days ago1549821194
0x199650f6...aCb845D30
0.12715963 ETH
-71694642019-02-03 17:46:572223 days ago1549216017
0x199650f6...aCb845D30
0.20070364 ETH
-71628872019-02-02 9:27:592224 days ago1549099679
0x199650f6...aCb845D30
0.20000055 ETH
-71563552019-02-01 1:03:212226 days ago1548983001
0x199650f6...aCb845D30
0.20219227 ETH
-71497262019-01-30 17:00:372227 days ago1548867637
0x199650f6...aCb845D30
0.20034809 ETH
-71433052019-01-29 9:29:512228 days ago1548754191
0x199650f6...aCb845D30
0.20029268 ETH
-71365962019-01-28 0:26:572230 days ago1548635217
0x199650f6...aCb845D30
0.20021313 ETH
-71291022019-01-26 12:49:372231 days ago1548506977
0x199650f6...aCb845D30
0.20031028 ETH
-71215002019-01-25 0:43:502233 days ago1548377030
0x199650f6...aCb845D30
0.20027886 ETH
-71135452019-01-23 11:15:032234 days ago1548242103
0x199650f6...aCb845D30
0.20026157 ETH
-71051262019-01-21 19:13:492236 days ago1548098029
0x199650f6...aCb845D30
0.20003747 ETH
-70970022019-01-20 6:31:092238 days ago1547965869
0x199650f6...aCb845D30
0.20050327 ETH
-70886342019-01-18 19:03:372239 days ago1547838217
0x199650f6...aCb845D30
0.20035302 ETH
-70802872019-01-17 7:14:022240 days ago1547709242
0x199650f6...aCb845D30
0.20055958 ETH
-70720812019-01-15 19:45:032242 days ago1547581503
0x199650f6...aCb845D30
0.20032465 ETH
-70598142019-01-13 15:23:582244 days ago1547393038
0x199650f6...aCb845D30
0.20047651 ETH
-70503982019-01-11 22:53:182246 days ago1547247198
0x199650f6...aCb845D30
0.20007963 ETH
-70418382019-01-10 10:06:552247 days ago1547114815
0x199650f6...aCb845D30
0.2003101 ETH
-70331112019-01-08 20:36:392249 days ago1546979799
0x199650f6...aCb845D30
0.20030209 ETH
-70135012019-01-05 8:25:312252 days ago1546676731
0x199650f6...aCb845D30
0.2002578 ETH
-69997252019-01-02 21:08:142255 days ago1546463294
0x199650f6...aCb845D30
0.20022664 ETH
-69866902018-12-31 16:24:252257 days ago1546273465
0x199650f6...aCb845D30
0.20051882 ETH
-69753872018-12-29 18:38:362259 days ago1546108716
0x199650f6...aCb845D30
0.20031706 ETH
-69666822018-12-28 7:16:182260 days ago1545981378
0x199650f6...aCb845D30
0.20008269 ETH
-69583752018-12-26 21:10:242262 days ago1545858624
0x199650f6...aCb845D30
0.20046638 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

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"}]

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.