ETH Price: $3,281.73 (-0.13%)

Contract

0xa7A71e793B1DC2e2711C81fb9BdF9bf0041736e1
 

Overview

ETH Balance

0.000000006 ETH

Eth Value

Less Than $0.01 (@ $3,281.73/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep156073202022-09-25 2:12:35847 days ago1664071955IN
0xa7A71e79...0041736e1
0 ETH0.0016975530
Transfer156073022022-09-25 2:08:59847 days ago1664071739IN
0xa7A71e79...0041736e1
0.48968662 ETH0.000089534.25323643
Sweep137768342021-12-10 10:23:391135 days ago1639131819IN
0xa7A71e79...0041736e1
0 ETH0.0029961952.95026635
Transfer137768212021-12-10 10:21:011135 days ago1639131661IN
0xa7A71e79...0041736e1
0.08681882 ETH0.0010629350.49347932
Sweep133770302021-10-08 8:07:231198 days ago1633680443IN
0xa7A71e79...0041736e1
0 ETH0.005643899.76149933
Transfer133770162021-10-08 8:04:221198 days ago1633680262IN
0xa7A71e79...0041736e1
0.07067295 ETH0.0017144181.44111266
Sweep131210082021-08-29 14:51:281238 days ago1630248688IN
0xa7A71e79...0041736e1
0 ETH0.0049089286.7531119
Transfer131209952021-08-29 14:48:231238 days ago1630248503IN
0xa7A71e79...0041736e1
0.0755497 ETH0.0015889875.48265512
Sweep129030802021-07-26 17:15:581272 days ago1627319758IN
0xa7A71e79...0041736e1
0 ETH0.0021469437.95
Transfer129030562021-07-26 17:10:221272 days ago1627319422IN
0xa7A71e79...0041736e1
0.05009041 ETH0.000021051
Sweep127537032021-07-03 9:02:541295 days ago1625302974IN
0xa7A71e79...0041736e1
0 ETH0.0016971930
Transfer127536882021-07-03 8:59:341295 days ago1625302774IN
0xa7A71e79...0041736e1
0.0565846 ETH0.000021051
Sweep125961702021-06-08 20:56:591320 days ago1623185819IN
0xa7A71e79...0041736e1
0 ETH0.0016975530
Transfer125961442021-06-08 20:51:211320 days ago1623185481IN
0xa7A71e79...0041736e1
0.08907215 ETH0.000021051
Sweep124084692021-05-10 19:11:351349 days ago1620673895IN
0xa7A71e79...0041736e1
0 ETH0.01483344262.2
Transfer124084492021-05-10 19:07:291349 days ago1620673649IN
0xa7A71e79...0041736e1
0.05142293 ETH0.000021051
Sweep122850852021-04-21 18:13:221368 days ago1619028802IN
0xa7A71e79...0041736e1
0 ETH0.01066966188.6
Transfer122850512021-04-21 18:06:311368 days ago1619028391IN
0xa7A71e79...0041736e1
0.06814275 ETH0.000021051
Sweep121592682021-04-02 9:31:541387 days ago1617355914IN
0xa7A71e79...0041736e1
0 ETH0.00914986160.6
Transfer121592512021-04-02 9:28:121387 days ago1617355692IN
0xa7A71e79...0041736e1
0.06513546 ETH0.000021051
Sweep120578562021-03-17 18:38:541403 days ago1616006334IN
0xa7A71e79...0041736e1
0 ETH0.01341426235.4
Transfer120578402021-03-17 18:35:081403 days ago1616006108IN
0xa7A71e79...0041736e1
0.23132999 ETH0.000021051
Sweep117851252021-02-03 19:17:321445 days ago1612379852IN
0xa7A71e79...0041736e1
0 ETH0.01604861281.688
Transfer117850982021-02-03 19:11:541445 days ago1612379514IN
0xa7A71e79...0041736e1
0.05779869 ETH0.000021051
Sweep117459512021-01-28 18:33:181451 days ago1611858798IN
0xa7A71e79...0041736e1
0 ETH0.0051286590
View all transactions

Latest 22 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
156073202022-09-25 2:12:35847 days ago1664071955
0xa7A71e79...0041736e1
0.48968662 ETH
137768342021-12-10 10:23:391135 days ago1639131819
0xa7A71e79...0041736e1
0.08681882 ETH
133770302021-10-08 8:07:231198 days ago1633680443
0xa7A71e79...0041736e1
0.07067295 ETH
131210082021-08-29 14:51:281238 days ago1630248688
0xa7A71e79...0041736e1
0.0755497 ETH
129030802021-07-26 17:15:581272 days ago1627319758
0xa7A71e79...0041736e1
0.05009041 ETH
127537032021-07-03 9:02:541295 days ago1625302974
0xa7A71e79...0041736e1
0.0565846 ETH
125961702021-06-08 20:56:591320 days ago1623185819
0xa7A71e79...0041736e1
0.08907215 ETH
124084692021-05-10 19:11:351349 days ago1620673895
0xa7A71e79...0041736e1
0.05142293 ETH
122850852021-04-21 18:13:221368 days ago1619028802
0xa7A71e79...0041736e1
0.06814275 ETH
121592682021-04-02 9:31:541387 days ago1617355914
0xa7A71e79...0041736e1
0.06513546 ETH
120578562021-03-17 18:38:541403 days ago1616006334
0xa7A71e79...0041736e1
0.23132999 ETH
117851252021-02-03 19:17:321445 days ago1612379852
0xa7A71e79...0041736e1
0.05779869 ETH
117459512021-01-28 18:33:181451 days ago1611858798
0xa7A71e79...0041736e1
0.31403166 ETH
116482902021-01-13 18:22:091466 days ago1610562129
0xa7A71e79...0041736e1
0.10448247 ETH
114450372020-12-13 13:47:311497 days ago1607867251
0xa7A71e79...0041736e1
0.1261973 ETH
80354732019-06-26 19:35:142033 days ago1561577714
0xa7A71e79...0041736e1
0.36700532 ETH
77737462019-05-16 21:32:502074 days ago1558042370
0xa7A71e79...0041736e1
0.50421677 ETH
77729842019-05-16 18:47:032074 days ago1558032423
0xa7A71e79...0041736e1
1.39405894 ETH
62968512018-09-08 23:20:252324 days ago1536448825
0xa7A71e79...0041736e1
2.81962162 ETH
62713562018-09-04 16:52:262328 days ago1536079946
0xa7A71e79...0041736e1
0.54270039 ETH
55505772018-05-03 18:36:292452 days ago1525372589
0xa7A71e79...0041736e1
0.13844269 ETH
50030802018-01-31 2:13:422545 days ago1517364822  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.