Contract 0xa1fa9422ed2159b57fff31fc0172d0bd83455a78

 

Contract Overview

Balance:
0.000000009 Ether

EtherValue:
Less Than $0.01 (@ $139.06/ETH)

Token:
TxHash Block Age From To Value [TxFee]
0x47007944735869c713d9e35b1712df5cfb39819ec9bacc041da3c7da9c359fd8698433779 days 4 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0030889
0x613de4304093611a3bbdb3588114da06014a4e37fd31d0d1f8ea51091f09fc0c698203479 days 13 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0030889
0xa6f51e4edb41382b43e4530658d44e364ce94c354eb0c2b510936444033b38de698201879 days 13 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0030889
0xb798e889b74a549d612d9a43e80d23ba7af6592a245a9240f6f676fc81be72b9698201879 days 13 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.00250285
0xe46c9192d36951c6607bea93e050da2049dd442d835339ab12f44942a0fd0633698201479 days 13 hrs ago0x496999ca877318546a036d2f8b3c2a2e740c5dca IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780.9857 Ether0.000042102
0x3fc79e151a9149c2ae3452518b9ec6281ab5beee97551ba0013e67c7db58b315698198679 days 13 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0030889
0x02f79a86106cf22fb46ae5842bb562a8550faee7b75eec2ae45bbc970efe3aab698185779 days 14 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0030921
0x6b53ddda6a3f39a108adda8d8224782c4a88050c71a0cb6830b1c109a2ede208698179079 days 14 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0023389
0xdcdf481f033cf816b56a0620e471b910e1d133d3d44a5c222897bc7f6ff61f05698170279 days 15 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0023389
0xb6651bdaa018b100c8b7e811c42be1a9e954aba94c1e5919e21a1b5dc2a4adee695216484 days 14 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.00250285
0x6a37c53efa3e31f62b47c9f15a1b3fb025e2343cdbf115532ae3a388c4efff76695214984 days 14 hrs ago0xca2e3191797f959a55ab190e0218b2f873d249bb IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780.090069139 Ether0.000315765
0x6578655eff227d248db2289dd0519ac5ab07563f4deb0b0758e593e6c9d068d7695214984 days 14 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.0023453
0x8ed1b75ca2e99e9588c8ea770d224c8d0d00402e6fbf5de2350e6c0f892202b54745631458 days 10 hrs agoBittrex 1 IN  0xa1fa9422ed2159b57fff31fc0172d0bd83455a780 Ether0.00514845
[ Download CSV Export 

Latest 3 internal transactions Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0xb798e889b74a549d612d9a43e80d23ba7af6592a245a9240f6f676fc81be72b9698201879 days 13 hrs ago0xa1fa9422ed2159b57fff31fc0172d0bd83455a780xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.9857 Ether
0xb6651bdaa018b100c8b7e811c42be1a9e954aba94c1e5919e21a1b5dc2a4adee695216484 days 14 hrs ago0xa1fa9422ed2159b57fff31fc0172d0bd83455a780xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.09006913 Ether
0xf138697510335272b0e30e17fdf1686bfe08d55e62e686c371f13dfeada495e74744103458 days 16 hrs ago0xa3c1e324ca1ce40db73ed6026c4a177f099b5770  Contract Creation0 Ether
[ Download CSV Export 

Contract Source Code Verified (Similar Match)
Note: This contract matches the deployed ByteCode of the Verified Source Code for Contract 0xd1DD82d1dED8f40c200b89455050E9C18D918504

Contract Name:
UserWallet

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes

Runs (Optimizer):
200

Contract Source Code

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

Contract Creation Code

6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1
Block Age Transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.