ETH Price: $2,364.62 (-5.11%)

Contract

0xfADFF9AAA7651592E8Df098c8d7002c83E6f51C4
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep53116212018-03-24 6:40:062532 days ago1521873606IN
0xfADFF9AA...83E6f51C4
0 ETH0.0025028550
Transfer53115822018-03-24 6:32:002532 days ago1521873120IN
0xfADFF9AA...83E6f51C4
0.318487 ETH0.000105255
Sweep53114802018-03-24 6:07:192532 days ago1521871639IN
0xfADFF9AA...83E6f51C4
0 ETH0.0025028550
Transfer53114472018-03-24 5:58:572532 days ago1521871137IN
0xfADFF9AA...83E6f51C4
0.159867 ETH0.00008424
Sweep48275842017-12-31 3:11:332615 days ago1514689893IN
0xfADFF9AA...83E6f51C4
0 ETH0.002552951
Transfer48275822017-12-31 3:11:162615 days ago1514689876IN
0xfADFF9AA...83E6f51C4
0.10462157 ETH0.0004210220
Sweep48275722017-12-31 3:09:042615 days ago1514689744IN
0xfADFF9AA...83E6f51C4
0 ETH0.002552951
Transfer48275412017-12-31 3:01:342615 days ago1514689294IN
0xfADFF9AA...83E6f51C4
0.10466357 ETH0.0004210220
Sweep48060232017-12-27 10:43:242618 days ago1514371404IN
0xfADFF9AA...83E6f51C4
0 ETH0.002552951
Transfer48059872017-12-27 10:33:412618 days ago1514370821IN
0xfADFF9AA...83E6f51C4
0.13083528 ETH0.0007367835
Sweep47705452017-12-21 10:07:382625 days ago1513850858IN
0xfADFF9AA...83E6f51C4
0 ETH0.002799656
Transfer47697922017-12-21 6:48:252625 days ago1513838905IN
0xfADFF9AA...83E6f51C4
0.12 ETH0.0002105110
Sweep47591702017-12-19 9:09:132627 days ago1513674553IN
0xfADFF9AA...83E6f51C4
0 ETH0.002799656
Transfer47591342017-12-19 8:58:272627 days ago1513673907IN
0xfADFF9AA...83E6f51C4
0.3 ETH0.0002105110
Sweep47542022017-12-18 11:48:522627 days ago1513597732IN
0xfADFF9AA...83E6f51C4
0 ETH0.0025496451
Transfer47541662017-12-18 11:40:392627 days ago1513597239IN
0xfADFF9AA...83E6f51C4
0.3 ETH0.0002105110
Sweep47399952017-12-16 1:18:232630 days ago1513387103IN
0xfADFF9AA...83E6f51C4
0 ETH0.002552951
Transfer47399892017-12-16 1:16:312630 days ago1513386991IN
0xfADFF9AA...83E6f51C4
0.69957898 ETH0.0002105110
Sweep47399572017-12-16 1:07:452630 days ago1513386465IN
0xfADFF9AA...83E6f51C4
0 ETH0.0025496451
Transfer47399282017-12-16 0:59:552630 days ago1513385995IN
0xfADFF9AA...83E6f51C4
0.3 ETH0.0002105110
Transfer47346052017-12-15 3:03:302631 days ago1513307010IN
0xfADFF9AA...83E6f51C4
0.01 ETH0.0002105110
Sweep47345512017-12-15 2:51:372631 days ago1513306297IN
0xfADFF9AA...83E6f51C4
0 ETH0.0033665367.340098
Transfer47344852017-12-15 2:33:222631 days ago1513305202IN
0xfADFF9AA...83E6f51C4
0.1 ETH0.0002105110
Transfer47342462017-12-15 1:31:032631 days ago1513301463IN
0xfADFF9AA...83E6f51C4
0.1 ETH0.0002110

Latest 12 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
53116212018-03-24 6:40:062532 days ago1521873606
0xfADFF9AA...83E6f51C4
0.318487 ETH
53114802018-03-24 6:07:192532 days ago1521871639
0xfADFF9AA...83E6f51C4
0.159867 ETH
48275842017-12-31 3:11:332615 days ago1514689893
0xfADFF9AA...83E6f51C4
0.10462157 ETH
48275722017-12-31 3:09:042615 days ago1514689744
0xfADFF9AA...83E6f51C4
0.10466357 ETH
48060232017-12-27 10:43:242618 days ago1514371404
0xfADFF9AA...83E6f51C4
0.13083528 ETH
47705452017-12-21 10:07:382625 days ago1513850858
0xfADFF9AA...83E6f51C4
0.12 ETH
47591702017-12-19 9:09:132627 days ago1513674553
0xfADFF9AA...83E6f51C4
0.3 ETH
47542022017-12-18 11:48:522627 days ago1513597732
0xfADFF9AA...83E6f51C4
0.3 ETH
47399952017-12-16 1:18:232630 days ago1513387103
0xfADFF9AA...83E6f51C4
0.69957898 ETH
47399572017-12-16 1:07:452630 days ago1513386465
0xfADFF9AA...83E6f51C4
0.31 ETH
47345512017-12-15 2:51:372631 days ago1513306297
0xfADFF9AA...83E6f51C4
0.1 ETH
47333052017-12-14 21:37:122631 days ago1513287432  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

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.