ETH Price: $2,724.19 (-2.54%)

Contract

0xb8a8821f721d3e79B6F6Dfa4BEB8eB716A4AE067
 

Overview

ETH Balance

0.000000001541755372 ETH

Eth Value

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

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep135944582021-11-11 10:49:331200 days ago1636627773IN
0xb8a8821f...16A4AE067
0 ETH0.00898182129.02322823
Sweep117535812021-01-29 22:50:451486 days ago1611960645IN
0xb8a8821f...16A4AE067
0 ETH0.00622145109.2
Sweep115845022021-01-03 23:27:411512 days ago1609716461IN
0xb8a8821f...16A4AE067
0 ETH0.01217199213.6
Transfer115844772021-01-03 23:22:591512 days ago1609716179IN
0xb8a8821f...16A4AE067
0.38470086 ETH0.00444176211
Sweep114277562020-12-10 21:59:471536 days ago1607637587IN
0xb8a8821f...16A4AE067
0 ETH0.0019142933.6
Transfer114277392020-12-10 21:55:311536 days ago1607637331IN
0xb8a8821f...16A4AE067
5 ETH0.0007157334
Sweep114209162020-12-09 20:43:021537 days ago1607546582IN
0xb8a8821f...16A4AE067
0 ETH0.0020305135.64
Transfer114208912020-12-09 20:38:331537 days ago1607546313IN
0xb8a8821f...16A4AE067
5 ETH0.0007367835
Sweep112583252020-11-14 21:37:291562 days ago1605389849IN
0xb8a8821f...16A4AE067
0 ETH0.0017091930
Transfer112582992020-11-14 21:33:001562 days ago1605389580IN
0xb8a8821f...16A4AE067
4.07 ETH0.0003789118
Sweep112128792020-11-07 22:03:281569 days ago1604786608IN
0xb8a8821f...16A4AE067
0 ETH0.0017091930
Transfer112128612020-11-07 21:59:001569 days ago1604786340IN
0xb8a8821f...16A4AE067
10 ETH0.0005719527.17
Sweep109708062020-10-01 15:00:381606 days ago1601564438IN
0xb8a8821f...16A4AE067
0 ETH0.00617173112.8
Sweep96331602020-03-08 21:12:341813 days ago1583701954IN
0xb8a8821f...16A4AE067
0 ETH0.001253422
Transfer96331402020-03-08 21:08:151813 days ago1583701695IN
0xb8a8821f...16A4AE067
2 ETH0.0002210310.5
Sweep81677722019-07-17 10:36:322048 days ago1563359792IN
0xb8a8821f...16A4AE067
0 ETH0.0010998422
Transfer81677552019-07-17 10:33:532048 days ago1563359633IN
0xb8a8821f...16A4AE067
0.5 ETH0.000157887.5
Sweep81670532019-07-17 7:55:002048 days ago1563350100IN
0xb8a8821f...16A4AE067
0 ETH0.0010998422
Transfer81670352019-07-17 7:50:052048 days ago1563349805IN
0xb8a8821f...16A4AE067
2 ETH0.0008630941
Sweep63657472018-09-20 9:29:492348 days ago1537435789IN
0xb8a8821f...16A4AE067
0 ETH0.0024996550
Transfer63657062018-09-20 9:21:462348 days ago1537435306IN
0xb8a8821f...16A4AE067
1.85 ETH0.0008630941
Sweep50345612018-02-05 10:01:562575 days ago1517824916IN
0xb8a8821f...16A4AE067
0 ETH0.0044993790
Transfer50345272018-02-05 9:54:252575 days ago1517824465IN
0xb8a8821f...16A4AE067
0.1 ETH0.0008630941
Sweep49634162018-01-24 9:56:162587 days ago1516787776IN
0xb8a8821f...16A4AE067
0 ETH0.0044993790
Transfer49633842018-01-24 9:46:022587 days ago1516787162IN
0xb8a8821f...16A4AE067
0.8 ETH0.0008630941
View all transactions

Latest 24 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
117535812021-01-29 22:50:451486 days ago1611960645
0xb8a8821f...16A4AE067
2 ETH
117535682021-01-29 22:47:311486 days ago1611960451
0xb8a8821f...16A4AE067
2 ETH
115845022021-01-03 23:27:411512 days ago1609716461
0xb8a8821f...16A4AE067
0.38470086 ETH
114277562020-12-10 21:59:471536 days ago1607637587
0xb8a8821f...16A4AE067
5 ETH
114209162020-12-09 20:43:021537 days ago1607546582
0xb8a8821f...16A4AE067
5 ETH
112583252020-11-14 21:37:291562 days ago1605389849
0xb8a8821f...16A4AE067
4.07 ETH
112128792020-11-07 22:03:281569 days ago1604786608
0xb8a8821f...16A4AE067
10 ETH
96331602020-03-08 21:12:341813 days ago1583701954
0xb8a8821f...16A4AE067
2 ETH
81677722019-07-17 10:36:322048 days ago1563359792
0xb8a8821f...16A4AE067
0.5 ETH
81670532019-07-17 7:55:002048 days ago1563350100
0xb8a8821f...16A4AE067
2 ETH
63657472018-09-20 9:29:492348 days ago1537435789
0xb8a8821f...16A4AE067
1.85 ETH
50345612018-02-05 10:01:562575 days ago1517824916
0xb8a8821f...16A4AE067
0.1 ETH
49634162018-01-24 9:56:162587 days ago1516787776
0xb8a8821f...16A4AE067
0.8 ETH
45499082017-11-14 7:59:282658 days ago1510646368
0xb8a8821f...16A4AE067
5.17522485 ETH
45447322017-11-13 11:57:032659 days ago1510574223
0xb8a8821f...16A4AE067
2 ETH
45016272017-11-06 14:08:162666 days ago1509977296
0xb8a8821f...16A4AE067
3 ETH
42950742017-09-20 14:57:402713 days ago1505919460
0xb8a8821f...16A4AE067
2.01195114 ETH
42807052017-09-16 15:30:162717 days ago1505575816
0xb8a8821f...16A4AE067
2.29703087 ETH
42728372017-09-14 10:54:372719 days ago1505386477
0xb8a8821f...16A4AE067
2.1838122 ETH
42438652017-09-06 8:03:082727 days ago1504684988
0xb8a8821f...16A4AE067
0.38 ETH
42414852017-09-05 15:52:132728 days ago1504626733
0xb8a8821f...16A4AE067
1.6 ETH
42239302017-08-31 16:27:082733 days ago1504196828
0xb8a8821f...16A4AE067
3 ETH
42156142017-08-29 7:46:282735 days ago1503992788
0xb8a8821f...16A4AE067
5 ETH
42105522017-08-27 20:40:472737 days ago1503866447  Contract Creation0 ETH
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.