Contract 0xae5baa050db58fd2c5296a7e4ad10fca33ad4782

 

TxHash Block Age From To Value [TxFee]
0xeaf0e191bce59c776ebc64b12670717682c09e9ab302212579f8b6e9d701b9ac5018173385 days 6 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.00450513
0x953df92efd956458f0602fdaf64fb589db374daeb61bee0f2f0ae5319ca02bb45018140385 days 6 hrs ago0x7cac1d44fb121a3caa0abf348bbbd3f43220dbe4 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820.80010246 Ether0.00063153
0xca05aa03fcb97793fc8af208840a2863c4be0a9b95322af8034b8a098087009a4918754402 days 7 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.00450513
0xfe762aa823364505fe39668c1348f395eebbf415f348dc8b3f33df85bdaf4d0a4918716402 days 7 hrs ago0xab38206da8925e90d02547b425bdda0cf69e4aca IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820.86898931 Ether0.001094652
0xfe2f870dc52139af115297a8ef098250c4a6ea236ecf5bbbbb2d95664f9cb1344885957408 days 7 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.0048805575
0x0476b7916929260ee03e179a974d99acee1425d5293cd5d4a9f9b2bdcdc0f59b4885925408 days 7 hrs ago0x95dd2b387fd6115572f0598db2345b79d2a7fdcb IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820.62262985 Ether0.002420865
0xf1eee7f47dfbfc2597c3eaae768541e84e75ac4ac824d54b7af8d0d81fa266c34855540413 days 22 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.002552907
0x28fb07b9bef8262df491b37da69f65c638c6597d603618788adc2ab2617f1b254855498413 days 22 hrs ago0x8191213a58979894f86078055b137922bf56150b IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820.98508493 Ether0.0006694218
0xa6c5b84bb53169584f26350d80c43f1f6b4c23bbb0d37ade8e04330888ba19314825952419 days 2 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.002552907
0xa6b70d7083543af599ae5a30ac16f0f809732bb504970ee64876c3584783277a4825919419 days 2 hrs ago0x1778b1561a232afd6a705f4d85cb3ce57b18e68e IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820.89379635 Ether0.00042102
0x20af38e82bd5556114cdce4442e187c67b59f78e5bf7037f4c2252dcaf3e43f04644158450 days 9 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.00100114
0xf0fea6cbe0ba565f2da2ec2ae7f8b31ca882589c2a1d0cb1e1777510c6bc559f4644146450 days 9 hrs ago0xad53f72578fa15f78fdba38c09fbcad5babd9f7b IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47821.30765189 Ether0.00042102
0x34f6ce91a99547ed719e62ba5473af7bf9e930779c58524d79e1f19338fabfd14525820469 days 11 hrs agoBittrex_1 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47820 Ether0.00100114
0xf389b4b30d1312819bfaec256d9d75725cee85c04c3e4974d7ed5eab489221ab4525815469 days 11 hrs ago0xaff8bb069fcbe2b491b17983225da75d3725af20 IN  0xae5baa050db58fd2c5296a7e4ad10fca33ad47821.25944165 Ether0.00042102
[ Download CSV Export 

Latest 8 Internal Transactions Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0xeaf0e191bce59c776ebc64b12670717682c09e9ab302212579f8b6e9d701b9ac5018173385 days 6 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.80010246 Ether
0xca05aa03fcb97793fc8af208840a2863c4be0a9b95322af8034b8a098087009a4918754402 days 7 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.86898931 Ether
0xfe2f870dc52139af115297a8ef098250c4a6ea236ecf5bbbbb2d95664f9cb1344885957408 days 7 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.62262985 Ether
0xf1eee7f47dfbfc2597c3eaae768541e84e75ac4ac824d54b7af8d0d81fa266c34855540413 days 22 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.98508493 Ether
0xa6c5b84bb53169584f26350d80c43f1f6b4c23bbb0d37ade8e04330888ba19314825952419 days 2 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb980.89379635 Ether
0x20af38e82bd5556114cdce4442e187c67b59f78e5bf7037f4c2252dcaf3e43f04644158450 days 9 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb981.30765189 Ether
0x34f6ce91a99547ed719e62ba5473af7bf9e930779c58524d79e1f19338fabfd14525820469 days 11 hrs ago0xae5baa050db58fd2c5296a7e4ad10fca33ad47820xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb981.25944165 Ether
0x59190fb574f22d777248c5a5d19b40d49e6f0ad47b987f672f0e5c8fb2562fc84462177479 days 17 hrs ago0xa3c1e324ca1ce40db73ed6026c4a177f099b5770  Contract Creation0 Ether
[ Download CSV Export 
Warning: The compiled contract might be susceptible to ExpExponentCleanup (medium/high-severity), NestedArrayFunctionCallDecoder (medium-severity), ZeroFunctionSelector (very low-severity), DelegateCallReturnValue (low-severity), ECRecoverMalformedInput (medium-severity), SkipEmptyStringLiteral (low-severity) Solidity Compiler Bugs.

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
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.