ETH Price: $2,049.04 (-3.25%)

Contract

0xa86fA2CF3E47081ea7CC904dC7A64751f2508E58
 

Overview

ETH Balance

0.00000000735740996 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep147398082022-05-09 2:30:251397 days ago1652063425IN
0xa86fA2CF...1f2508E58
0 ETH0.0017599931.11021269
Transfer147397952022-05-09 2:27:351397 days ago1652063255IN
0xa86fA2CF...1f2508E58
0.86 ETH0.0003854218.30919004
Sweep147331212022-05-08 1:08:491398 days ago1651972129IN
0xa86fA2CF...1f2508E58
0 ETH0.0020641536.48665562
Transfer147331042022-05-08 1:03:041398 days ago1651971784IN
0xa86fA2CF...1f2508E58
0.2 ETH0.0005292525.14135188
Sweep145810192022-04-14 3:04:081422 days ago1649905448IN
0xa86fA2CF...1f2508E58
0 ETH0.0020870736.89166538
Transfer145810062022-04-14 3:01:431422 days ago1649905303IN
0xa86fA2CF...1f2508E58
0.72 ETH0.0008625940.97652959
Sweep143614482022-03-10 21:06:051456 days ago1646946365IN
0xa86fA2CF...1f2508E58
0 ETH0.0033134543.03917669
Sweep140777382022-01-25 23:24:511500 days ago1643153091IN
0xa86fA2CF...1f2508E58
0 ETH0.01085549167.27782826
Sweep140387132022-01-19 22:35:331506 days ago1642631733IN
0xa86fA2CF...1f2508E58
0 ETH0.00879618155.48387197
Transfer140386962022-01-19 22:32:081506 days ago1642631528IN
0xa86fA2CF...1f2508E58
2.5 ETH0.00254839121.05815148
Sweep139917092022-01-12 16:13:101513 days ago1642003990IN
0xa86fA2CF...1f2508E58
0 ETH0.00958093169.35526505
Transfer139916892022-01-12 16:09:061513 days ago1642003746IN
0xa86fA2CF...1f2508E58
0.46 ETH0.00311203147.83335556
Sweep139525782022-01-06 15:08:141519 days ago1641481694IN
0xa86fA2CF...1f2508E58
0 ETH0.01845538326.22246712
Transfer139525582022-01-06 15:04:151519 days ago1641481455IN
0xa86fA2CF...1f2508E58
0.12 ETH0.00487035231.3596096
Sweep139400122022-01-04 16:17:591521 days ago1641313079IN
0xa86fA2CF...1f2508E58
0 ETH0.01082238140.59607997
Sweep138234262021-12-17 15:32:101539 days ago1639755130IN
0xa86fA2CF...1f2508E58
0 ETH0.0056073999.11793702
Transfer138234092021-12-17 15:28:251539 days ago1639754905IN
0xa86fA2CF...1f2508E58
0.11 ETH0.0018152486.23062694
Sweep137322982021-12-03 7:34:471554 days ago1638516887IN
0xa86fA2CF...1f2508E58
0 ETH0.0048056884.94653495
Transfer137322712021-12-03 7:29:551554 days ago1638516595IN
0xa86fA2CF...1f2508E58
1.5 ETH0.0016341877.62960585
Sweep135898432021-11-10 17:33:561576 days ago1636565636IN
0xa86fA2CF...1f2508E58
0 ETH0.0100159177.04387758
Transfer135898232021-11-10 17:31:031576 days ago1636565463IN
0xa86fA2CF...1f2508E58
1 ETH0.00362791172.33911167
Sweep135862772021-11-10 4:03:531577 days ago1636517033IN
0xa86fA2CF...1f2508E58
0 ETH0.00957878169.31719275
Transfer135862612021-11-10 3:59:341577 days ago1636516774IN
0xa86fA2CF...1f2508E58
0.5 ETH0.00291303138.379998
Sweep134873772021-10-25 15:22:321592 days ago1635175352IN
0xa86fA2CF...1f2508E58
0 ETH0.0061381108.49887357
Transfer134873522021-10-25 15:16:091592 days ago1635174969IN
0xa86fA2CF...1f2508E58
0.3 ETH0.0020411796.96309694
View all transactions

Latest 21 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-147398082022-05-09 2:30:251397 days ago1652063425
0xa86fA2CF...1f2508E58
0.86 ETH
-147331212022-05-08 1:08:491398 days ago1651972129
0xa86fA2CF...1f2508E58
0.2 ETH
-145810192022-04-14 3:04:081422 days ago1649905448
0xa86fA2CF...1f2508E58
0.72 ETH
-140387132022-01-19 22:35:331506 days ago1642631733
0xa86fA2CF...1f2508E58
2.5 ETH
-139917092022-01-12 16:13:101513 days ago1642003990
0xa86fA2CF...1f2508E58
0.46 ETH
-139525782022-01-06 15:08:141519 days ago1641481694
0xa86fA2CF...1f2508E58
0.12 ETH
-138234262021-12-17 15:32:101539 days ago1639755130
0xa86fA2CF...1f2508E58
0.11 ETH
-137322982021-12-03 7:34:471554 days ago1638516887
0xa86fA2CF...1f2508E58
1.5 ETH
-135898432021-11-10 17:33:561576 days ago1636565636
0xa86fA2CF...1f2508E58
1 ETH
-135862772021-11-10 4:03:531577 days ago1636517033
0xa86fA2CF...1f2508E58
0.5 ETH
-134873772021-10-25 15:22:321592 days ago1635175352
0xa86fA2CF...1f2508E58
0.3 ETH
-132370272021-09-16 13:28:171631 days ago1631798897
0xa86fA2CF...1f2508E58
2 ETH
-131036752021-08-26 22:17:141652 days ago1630016234
0xa86fA2CF...1f2508E58
0.25 ETH
-128352632021-07-16 2:27:101694 days ago1626402430
0xa86fA2CF...1f2508E58
0.4 ETH
-127707532021-07-06 0:35:521704 days ago1625531752
0xa86fA2CF...1f2508E58
0.5 ETH
-127195422021-06-28 1:17:331712 days ago1624843053
0xa86fA2CF...1f2508E58
1.3 ETH
-127036252021-06-25 13:48:081714 days ago1624628888
0xa86fA2CF...1f2508E58
0.25 ETH
-126790842021-06-21 17:49:121718 days ago1624297752
0xa86fA2CF...1f2508E58
1 ETH
-126360682021-06-15 1:23:031725 days ago1623720183
0xa86fA2CF...1f2508E58
0.3 ETH
-125558622021-06-02 15:22:361737 days ago1622647356
0xa86fA2CF...1f2508E58
0.2179662 ETH
Transfer67256252018-11-18 5:41:372665 days ago1542519697  Contract Creation0 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

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

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.