ETH Price: $2,819.23 (+2.02%)

Contract

0xD821ca22983Ca21c6a8b485dEA6607743b8CF4F2
 

Overview

ETH Balance

0.000000004974831071 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep117949282021-02-05 7:29:141479 days ago1612510154IN
0xD821ca22...43b8CF4F2
0 ETH0.01046024183.60000175
Transfer117949012021-02-05 7:21:581479 days ago1612509718IN
0xD821ca22...43b8CF4F2
0.06474895 ETH0.000021051
Sweep117764732021-02-02 11:12:241482 days ago1612264344IN
0xD821ca22...43b8CF4F2
0 ETH0.00691273121.308
Transfer117764572021-02-02 11:08:531482 days ago1612264133IN
0xD821ca22...43b8CF4F2
0.12034493 ETH0.000021051
Sweep117699122021-02-01 11:00:101483 days ago1612177210IN
0xD821ca22...43b8CF4F2
0 ETH0.00964186169.2
Transfer117698932021-02-01 10:56:221483 days ago1612176982IN
0xD821ca22...43b8CF4F2
0.11040632 ETH0.000021051
Sweep117633022021-01-31 10:42:041484 days ago1612089724IN
0xD821ca22...43b8CF4F2
0 ETH0.005264392.4
Transfer117632802021-01-31 10:37:121484 days ago1612089432IN
0xD821ca22...43b8CF4F2
0.10061824 ETH0.000021051
Sweep117566992021-01-30 10:23:021485 days ago1612002182IN
0xD821ca22...43b8CF4F2
0 ETH0.0038293967.20000175
Transfer117566792021-01-30 10:18:061485 days ago1612001886IN
0xD821ca22...43b8CF4F2
0.10083319 ETH0.000021051
Sweep117501802021-01-29 10:10:401486 days ago1611915040IN
0xD821ca22...43b8CF4F2
0 ETH0.01188933208.63980114
Transfer117501562021-01-29 10:05:371486 days ago1611914737IN
0xD821ca22...43b8CF4F2
0.10011861 ETH0.000021051
Sweep117436722021-01-28 10:05:151487 days ago1611828315IN
0xD821ca22...43b8CF4F2
0 ETH0.0047867484
Transfer117436462021-01-28 10:00:071487 days ago1611828007IN
0xD821ca22...43b8CF4F2
0.10010232 ETH0.000021051
Sweep117369592021-01-27 9:20:551488 days ago1611739255IN
0xD821ca22...43b8CF4F2
0 ETH0.00639371112.2
Transfer117369392021-01-27 9:14:011488 days ago1611738841IN
0xD821ca22...43b8CF4F2
0.10044131 ETH0.000021051
Sweep117297862021-01-26 6:44:171489 days ago1611643457IN
0xD821ca22...43b8CF4F2
0 ETH0.003419160
Transfer117297652021-01-26 6:39:351489 days ago1611643175IN
0xD821ca22...43b8CF4F2
0.10018902 ETH0.000021051
Sweep117230972021-01-25 6:04:451490 days ago1611554685IN
0xD821ca22...43b8CF4F2
0 ETH0.00571673100.32
Transfer117230782021-01-25 5:58:561490 days ago1611554336IN
0xD821ca22...43b8CF4F2
0.10085933 ETH0.000021051
Sweep117165952021-01-24 5:56:171491 days ago1611467777IN
0xD821ca22...43b8CF4F2
0 ETH0.003419160
Transfer117165812021-01-24 5:53:521491 days ago1611467632IN
0xD821ca22...43b8CF4F2
0.10010298 ETH0.000021051
Sweep117093182021-01-23 3:15:071492 days ago1611371707IN
0xD821ca22...43b8CF4F2
0 ETH0.0042396874.40000175
Transfer117092992021-01-23 3:10:061492 days ago1611371406IN
0xD821ca22...43b8CF4F2
0.10159277 ETH0.000021051
Sweep117028162021-01-22 3:08:541493 days ago1611284934IN
0xD821ca22...43b8CF4F2
0 ETH0.01456639255.618
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
117949282021-02-05 7:29:141479 days ago1612510154
0xD821ca22...43b8CF4F2
0.06474896 ETH
117764732021-02-02 11:12:241482 days ago1612264344
0xD821ca22...43b8CF4F2
0.12034494 ETH
117699122021-02-01 11:00:101483 days ago1612177210
0xD821ca22...43b8CF4F2
0.11040632 ETH
117633022021-01-31 10:42:041484 days ago1612089724
0xD821ca22...43b8CF4F2
0.10061824 ETH
117566992021-01-30 10:23:021485 days ago1612002182
0xD821ca22...43b8CF4F2
0.10083319 ETH
117501802021-01-29 10:10:401486 days ago1611915040
0xD821ca22...43b8CF4F2
0.10011862 ETH
117436722021-01-28 10:05:151487 days ago1611828315
0xD821ca22...43b8CF4F2
0.10010232 ETH
117369592021-01-27 9:20:551488 days ago1611739255
0xD821ca22...43b8CF4F2
0.10044132 ETH
117297862021-01-26 6:44:171489 days ago1611643457
0xD821ca22...43b8CF4F2
0.10018902 ETH
117230972021-01-25 6:04:451490 days ago1611554685
0xD821ca22...43b8CF4F2
0.10085934 ETH
117165952021-01-24 5:56:171491 days ago1611467777
0xD821ca22...43b8CF4F2
0.10010298 ETH
117093182021-01-23 3:15:071492 days ago1611371707
0xD821ca22...43b8CF4F2
0.10159278 ETH
117028162021-01-22 3:08:541493 days ago1611284934
0xD821ca22...43b8CF4F2
0.11943032 ETH
116962742021-01-21 2:58:501494 days ago1611197930
0xD821ca22...43b8CF4F2
0.10048818 ETH
116894222021-01-20 1:51:581495 days ago1611107518
0xD821ca22...43b8CF4F2
0.10062887 ETH
116827222021-01-19 1:24:391496 days ago1611019479
0xD821ca22...43b8CF4F2
0.10037139 ETH
116757812021-01-17 23:43:091497 days ago1610926989
0xD821ca22...43b8CF4F2
0.10015956 ETH
116684042021-01-16 20:28:551499 days ago1610828935
0xD821ca22...43b8CF4F2
0.10200798 ETH
116619122021-01-15 20:28:201500 days ago1610742500
0xD821ca22...43b8CF4F2
0.1089917 ETH
116553362021-01-14 20:24:441501 days ago1610655884
0xD821ca22...43b8CF4F2
0.1002623 ETH
116487662021-01-13 20:08:331502 days ago1610568513
0xD821ca22...43b8CF4F2
0.10055788 ETH
116416742021-01-12 17:59:281503 days ago1610474368
0xD821ca22...43b8CF4F2
0.11654742 ETH
116351152021-01-11 17:57:141504 days ago1610387834
0xD821ca22...43b8CF4F2
0.14262587 ETH
116284532021-01-10 17:25:351505 days ago1610299535
0xD821ca22...43b8CF4F2
0.10071303 ETH
116217392021-01-09 16:50:441506 days ago1610211044
0xD821ca22...43b8CF4F2
0.10143526 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.