ETH Price: $2,094.27 (+0.93%)

Contract

0x883D1ca0F10565b02dfd78D62A4d28eC60EFE26A
 

Overview

ETH Balance

0.000000009937517096 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep130794352021-08-23 4:31:261665 days ago1629693086IN
0x883D1ca0...C60EFE26A
0 ETH0.004059971.74878789
Transfer130794192021-08-23 4:27:201665 days ago1629692840IN
0x883D1ca0...C60EFE26A
0.21973415 ETH0.0022314106
Sweep129418862021-08-01 20:55:271686 days ago1627851327IN
0x883D1ca0...C60EFE26A
0 ETH0.0021469437.95
Transfer129418582021-08-01 20:50:251686 days ago1627851025IN
0x883D1ca0...C60EFE26A
1 ETH0.0008630941
Sweep129174182021-07-28 23:59:531690 days ago1627516793IN
0x883D1ca0...C60EFE26A
0 ETH0.0019226130
Sweep129173882021-07-28 23:52:091690 days ago1627516329IN
0x883D1ca0...C60EFE26A
0 ETH0.0019226130
Sweep128669892021-07-21 1:51:551698 days ago1626832315IN
0x883D1ca0...C60EFE26A
0 ETH0.0016971930
Transfer128669712021-07-21 1:47:371698 days ago1626832057IN
0x883D1ca0...C60EFE26A
2.3 ETH0.0003494416.6
Sweep128668892021-07-21 1:30:351698 days ago1626831035IN
0x883D1ca0...C60EFE26A
0 ETH0.0020277330
Sweep124430792021-05-16 3:25:111764 days ago1621135511IN
0x883D1ca0...C60EFE26A
0 ETH0.0032536357.5
Transfer124430632021-05-16 3:20:311764 days ago1621135231IN
0x883D1ca0...C60EFE26A
0.62746932 ETH0.0022735108
Sweep123714802021-05-05 2:20:281775 days ago1620181228IN
0x883D1ca0...C60EFE26A
0 ETH0.0024402243.125
Transfer123714612021-05-05 2:15:421775 days ago1620180942IN
0x883D1ca0...C60EFE26A
0.61174041 ETH0.0012630660
Sweep123711742021-05-05 1:09:511775 days ago1620176991IN
0x883D1ca0...C60EFE26A
0 ETH0.0033369349.3695
Sweep122430562021-04-15 6:34:151795 days ago1618468455IN
0x883D1ca0...C60EFE26A
0 ETH0.00576566101.2
Transfer122430322021-04-15 6:30:231795 days ago1618468223IN
0x883D1ca0...C60EFE26A
1.2 ETH0.00235771112
Sweep122364742021-04-14 5:57:361796 days ago1618379856IN
0x883D1ca0...C60EFE26A
0 ETH0.0052415192
Transfer122364572021-04-14 5:54:031796 days ago1618379643IN
0x883D1ca0...C60EFE26A
0.5 ETH0.0017472383
Sweep121831972021-04-06 1:35:461804 days ago1617672946IN
0x883D1ca0...C60EFE26A
0 ETH0.00952588167.2000016
Transfer121831762021-04-06 1:30:291804 days ago1617672629IN
0x883D1ca0...C60EFE26A
0.4 ETH0.0032629155
Sweep120603672021-03-18 4:04:091823 days ago1616040249IN
0x883D1ca0...C60EFE26A
0 ETH0.0092752162.8
Transfer120603472021-03-18 4:00:011823 days ago1616040001IN
0x883D1ca0...C60EFE26A
0.22 ETH0.00288398137
Sweep119956522021-03-08 4:19:461833 days ago1615177186IN
0x883D1ca0...C60EFE26A
0 ETH0.00601761105.6000016
Transfer119956292021-03-08 4:14:551833 days ago1615176895IN
0x883D1ca0...C60EFE26A
0.74592074 ETH0.00290503138
Sweep116571222021-01-15 3:12:271885 days ago1610680347IN
0x883D1ca0...C60EFE26A
0 ETH0.0041401860
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-130794352021-08-23 4:31:261665 days ago1629693086
0x883D1ca0...C60EFE26A
0.21973415 ETH
-129418862021-08-01 20:55:271686 days ago1627851327
0x883D1ca0...C60EFE26A
1 ETH
-128669892021-07-21 1:51:551698 days ago1626832315
0x883D1ca0...C60EFE26A
2.3 ETH
-124430792021-05-16 3:25:111764 days ago1621135511
0x883D1ca0...C60EFE26A
0.62746932 ETH
-123714802021-05-05 2:20:281775 days ago1620181228
0x883D1ca0...C60EFE26A
0.61174041 ETH
-122430562021-04-15 6:34:151795 days ago1618468455
0x883D1ca0...C60EFE26A
1.2 ETH
-122364742021-04-14 5:57:361796 days ago1618379856
0x883D1ca0...C60EFE26A
0.5 ETH
-121831972021-04-06 1:35:461804 days ago1617672946
0x883D1ca0...C60EFE26A
0.4 ETH
-120603672021-03-18 4:04:091823 days ago1616040249
0x883D1ca0...C60EFE26A
0.22 ETH
-119956522021-03-08 4:19:461833 days ago1615177186
0x883D1ca0...C60EFE26A
0.74592074 ETH
-115922452021-01-05 4:12:091895 days ago1609819929
0x883D1ca0...C60EFE26A
3.963 ETH
-111945372020-11-05 2:38:581956 days ago1604543938
0x883D1ca0...C60EFE26A
9.82674853 ETH
-106502732020-08-13 7:29:592040 days ago1597303799
0x883D1ca0...C60EFE26A
42.5 ETH
-102357632020-06-10 4:21:152104 days ago1591762875
0x883D1ca0...C60EFE26A
1 ETH
-101906612020-06-03 4:22:092111 days ago1591158129
0x883D1ca0...C60EFE26A
11 ETH
-98629372020-04-13 8:30:482162 days ago1586766648
0x883D1ca0...C60EFE26A
4.94 ETH
-98629062020-04-13 8:21:322162 days ago1586766092
0x883D1ca0...C60EFE26A
0.06 ETH
-97837922020-04-01 4:20:012174 days ago1585714801
0x883D1ca0...C60EFE26A
0.9408493 ETH
-97507622020-03-27 2:30:132179 days ago1585276213
0x883D1ca0...C60EFE26A
1 ETH
-72344452019-02-18 3:20:142582 days ago1550460014
0x883D1ca0...C60EFE26A
0.5279893 ETH
-71710632019-02-04 1:27:022596 days ago1549243622
0x883D1ca0...C60EFE26A
0.68979759 ETH
-71471052019-01-30 4:02:582601 days ago1548820978
0x883D1ca0...C60EFE26A
0.48 ETH
Transfer64870882018-10-10 5:31:532713 days ago1539149513
0x883D1ca0...C60EFE26A
1.06482202 ETH
Transfer56489992018-05-21 0:37:002855 days ago1526863020
0x883D1ca0...C60EFE26A
0.221 ETH
Transfer55308382018-04-30 7:07:112876 days ago1525072031
0x883D1ca0...C60EFE26A
1.34 ETH
View All Internal Transactions
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.