ETH Price: $2,564.74 (+0.73%)

Contract

0x194952648aBE855FBD3De469790b9EFA32a1555E
 

Overview

ETH Balance

0.000000000956523901 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep65559492018-10-21 10:44:482162 days ago1540118688IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer65559102018-10-21 10:36:042162 days ago1540118164IN
0x19495264...A32a1555E
6.1073 ETH0.0004210220
Sweep65395882018-10-18 18:30:232165 days ago1539887423IN
0x19495264...A32a1555E
0 ETH0.0024996550
Transfer65395712018-10-18 18:24:362165 days ago1539887076IN
0x19495264...A32a1555E
3.0324 ETH0.0004210220
Sweep65334232018-10-17 18:29:142166 days ago1539800954IN
0x19495264...A32a1555E
0 ETH0.0024996550
Transfer65333982018-10-17 18:23:332166 days ago1539800613IN
0x19495264...A32a1555E
3.144 ETH0.0004210220
Sweep65332142018-10-17 17:43:292166 days ago1539798209IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer65331772018-10-17 17:35:192166 days ago1539797719IN
0x19495264...A32a1555E
6.059 ETH0.0004210220
Sweep65178362018-10-15 5:17:162168 days ago1539580636IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer65178202018-10-15 5:12:422168 days ago1539580362IN
0x19495264...A32a1555E
4.36046825 ETH0.000021051
Sweep65116492018-10-14 5:13:492169 days ago1539494029IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer65116292018-10-14 5:10:042169 days ago1539493804IN
0x19495264...A32a1555E
13.14780563 ETH0.000021051
Sweep65054202018-10-13 5:05:592170 days ago1539407159IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer65053992018-10-13 5:00:552170 days ago1539406855IN
0x19495264...A32a1555E
0.07427294 ETH0.000021051
Sweep64992732018-10-12 4:59:012171 days ago1539320341IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer64992602018-10-12 4:56:362171 days ago1539320196IN
0x19495264...A32a1555E
1.56750649 ETH0.000021051
Sweep64945942018-10-11 10:50:152172 days ago1539255015IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer64945742018-10-11 10:47:062172 days ago1539254826IN
0x19495264...A32a1555E
3.00589308 ETH0.00016848
Sweep64931372018-10-11 5:02:162172 days ago1539234136IN
0x19495264...A32a1555E
0 ETH0.0024996550
Transfer64931182018-10-11 4:58:292172 days ago1539233909IN
0x19495264...A32a1555E
0.05021547 ETH0.000021051
Sweep64852962018-10-09 22:41:312173 days ago1539124891IN
0x19495264...A32a1555E
0 ETH0.0025028550
Transfer64852782018-10-09 22:36:542173 days ago1539124614IN
0x19495264...A32a1555E
0.31372947 ETH0.000021051
Transfer64599002018-10-05 20:13:022178 days ago1538770382IN
0x19495264...A32a1555E
0.01011715 ETH0.000021051
Transfer64559862018-10-05 4:42:532178 days ago1538714573IN
0x19495264...A32a1555E
0.00055147 ETH0.00020849.9
Sweep63870512018-09-23 21:52:332189 days ago1537739553IN
0x19495264...A32a1555E
0 ETH0.0024996550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
65559492018-10-21 10:44:482162 days ago1540118688
0x19495264...A32a1555E
6.1073 ETH
65395882018-10-18 18:30:232165 days ago1539887423
0x19495264...A32a1555E
3.0324 ETH
65334232018-10-17 18:29:142166 days ago1539800954
0x19495264...A32a1555E
3.144 ETH
65332142018-10-17 17:43:292166 days ago1539798209
0x19495264...A32a1555E
6.059 ETH
65178362018-10-15 5:17:162168 days ago1539580636
0x19495264...A32a1555E
4.36046826 ETH
65116492018-10-14 5:13:492169 days ago1539494029
0x19495264...A32a1555E
13.14780564 ETH
65054202018-10-13 5:05:592170 days ago1539407159
0x19495264...A32a1555E
0.07427295 ETH
64992732018-10-12 4:59:012171 days ago1539320341
0x19495264...A32a1555E
1.56750649 ETH
64945942018-10-11 10:50:152172 days ago1539255015
0x19495264...A32a1555E
3.00589309 ETH
64931372018-10-11 5:02:162172 days ago1539234136
0x19495264...A32a1555E
0.05021548 ETH
64852962018-10-09 22:41:312173 days ago1539124891
0x19495264...A32a1555E
0.3243981 ETH
63870512018-09-23 21:52:332189 days ago1537739553
0x19495264...A32a1555E
0.05041163 ETH
63679092018-09-20 18:05:232193 days ago1537466723
0x19495264...A32a1555E
0.87770739 ETH
63537422018-09-18 9:51:082195 days ago1537264268
0x19495264...A32a1555E
0.09029353 ETH
63441612018-09-16 19:51:042197 days ago1537127464
0x19495264...A32a1555E
0.05583863 ETH
63410712018-09-16 7:47:472197 days ago1537084067
0x19495264...A32a1555E
0.05025327 ETH
63382452018-09-15 20:33:062198 days ago1537043586
0x19495264...A32a1555E
0.05048543 ETH
63354382018-09-15 9:25:012198 days ago1537003501
0x19495264...A32a1555E
0.05037799 ETH
63324602018-09-14 21:49:052198 days ago1536961745
0x19495264...A32a1555E
0.05034732 ETH
63296782018-09-14 10:36:292199 days ago1536921389
0x19495264...A32a1555E
0.09803859 ETH
63047652018-09-10 7:35:432203 days ago1536564943
0x19495264...A32a1555E
0.05258341 ETH
62923232018-09-08 5:06:222205 days ago1536383182
0x19495264...A32a1555E
0.05024012 ETH
62910002018-09-07 23:43:152205 days ago1536363795
0x19495264...A32a1555E
0.07556537 ETH
62909532018-09-07 23:31:492205 days ago1536363109
0x19495264...A32a1555E
0.06391064 ETH
62909072018-09-07 23:20:402205 days ago1536362440
0x19495264...A32a1555E
0.12173274 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.