Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 1,586,444 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Make Wallet | 14985066 | 959 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14985066 | 959 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872232 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872232 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872231 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872231 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872231 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872228 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872228 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872228 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14872225 | 978 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14870901 | 979 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14870901 | 979 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14870901 | 979 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14870901 | 979 days ago | IN | 0 ETH | 0.00226434 | ||||
Make Wallet | 14870901 | 979 days ago | IN | 0 ETH | 0.00226434 |
Latest 25 internal transactions (View All)
Advanced mode:
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
Controller
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
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_newCaller","type":"address"}],"name":"changeAuthorizedCaller","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"logSweep","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"sweeperOf","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_dest","type":"address"}],"name":"changeDestination","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"halt","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"defaultSweeper","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_sweeper","type":"address"}],"name":"addSweeper","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"authorizedCaller","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"makeWallet","outputs":[{"name":"wallet","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"destination","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"halted","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"start","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"receiver","type":"address"}],"name":"LogNewWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":true,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"LogSweep","type":"event"}]
Contract Creation Code
60606040523061000d610095565b600160a060020a03909116815260405190819003602001906000f080151561003157fe5b60038054600160a060020a031916600160a060020a0392909216919091179055341561005957fe5b5b60008054600160a060020a033316600160a060020a03199182168117909255600280548216831790556001805490911690911790555b6100a5565b60405161050c806109bd83390190565b610909806100b46000396000f300606060405236156100cd5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166319449cb281146100cf57806328090abb146100ed5780633c18d3181461011a5780635e949fa0146101525780635ed7ca5b146101705780636fcb15001461018257806377bb09eb146101ae5780638da5cb5b146101d257806397dc97cb146101fe578063a6f9dae11461022a578063a9b1d50714610248578063b269681d14610274578063b9b8af0b146102a0578063be9a6555146102c4575bfe5b34156100d757fe5b6100eb600160a060020a03600435166102d6565b005b34156100f557fe5b6100eb600160a060020a036004358116906024358116906044351660643561031f565b005b341561012257fe5b610136600160a060020a036004351661037b565b60408051600160a060020a039092168252519081900360200190f35b341561015a57fe5b6100eb600160a060020a03600435166103b7565b005b341561017857fe5b6100eb610400565b005b341561018a57fe5b610136610472565b60408051600160a060020a039092168252519081900360200190f35b34156101b657fe5b6100eb600160a060020a0360043581169060243516610481565b005b34156101da57fe5b6101366104de565b60408051600160a060020a039092168252519081900360200190f35b341561020657fe5b6101366104ed565b60408051600160a060020a039092168252519081900360200190f35b341561023257fe5b6100eb600160a060020a03600435166104fc565b005b341561025057fe5b610136610545565b60408051600160a060020a039092168252519081900360200190f35b341561027c57fe5b6101366105f3565b60408051600160a060020a039092168252519081900360200190f35b34156102a857fe5b6102b0610602565b604080519115158252519081900360200190f35b34156102cc57fe5b6100eb610623565b005b60005433600160a060020a039081169116146102f25760006000fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b81600160a060020a031683600160a060020a031685600160a060020a03167fa64da754fccf55aa65a1f0128a648633fade3884b236e879ee9f64c78df5d5d7846040518082815260200191505060405180910390a45b50505050565b600160a060020a038082166000908152600460205260408120549091168015156103ad5750600354600160a060020a03165b8091505b50919050565b60005433600160a060020a039081169116146103d35760006000fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60015433600160a060020a0390811691161480159061042e575060005433600160a060020a03908116911614155b156104395760006000fd5b6002805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790555b5b565b600354600160a060020a031681565b60005433600160a060020a0390811691161461049d5760006000fd5b600160a060020a038281166000908152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff19169183169190911790555b5b5050565b600054600160a060020a031681565b600154600160a060020a031681565b60005433600160a060020a039081169116146105185760006000fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60015460009033600160a060020a03908116911614801590610576575060005433600160a060020a03908116911614155b156105815760006000fd5b3061058a610661565b600160a060020a03909116815260405190819003602001906000f08015156105ae57fe5b60408051600160a060020a038316815290519192507fef4c8685c12779a52dae7549eb7defa8523f67a054ad425b877a6b2da469a331919081900360200190a15b5b90565b600254600160a060020a031681565b60025474010000000000000000000000000000000000000000900460ff1681565b60005433600160a060020a0390811691161461063f5760006000fd5b6002805474ff0000000000000000000000000000000000000000191690555b5b565b60405161026c806106728339019056006060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029a165627a7a723058205f37abb33ec42325de2a86b496cacd041306060eda1fce344692092e4b8d328700296060604052341561000c57fe5b60405160208061050c83398101604052515b805b60008054600160a060020a031916600160a060020a0383161790555b505b505b6104bd8061004f6000396000f300606060405236156100255763ffffffff60e060020a6000350416636ea056a9811461003b575b341561002d57fe5b6100395b60006000fd5b565b005b341561004357fe5b61005a600160a060020a036004351660243561006e565b604080519115158252519081900360200190f35b600060006000600060006000600060009054906101000a9004600160a060020a0316600160a060020a03166397dc97cb6000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b15156100d557fe5b6102c65a03f115156100e357fe5b50506040515133600160a060020a039081169116148015915061018a5750600060009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b151561015c57fe5b6102c65a03f1151561016a57fe5b50505060405180519050600160a060020a031633600160a060020a031614155b156101955760006000fd5b600060009054906101000a9004600160a060020a0316600160a060020a031663b9b8af0b6000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b15156101f057fe5b6102c65a03f115156101fe57fe5b5050604051511590506102115760006000fd5b6000805460408051602090810184905281517fb269681d0000000000000000000000000000000000000000000000000000000081529151939850600160a060020a039092169263b269681d9260048084019391929182900301818b87803b151561027757fe5b6102c65a03f1151561028557fe5b505060405151945050600160a060020a038816156103ae5787925086915082600160a060020a03166370a08231306000604051602001526040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b151561030357fe5b6102c65a03f1151561031157fe5b50506040515183111590506103295760009550610485565b82600160a060020a031663a9059cbb85846000604051602001526040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b151561039157fe5b6102c65a03f1151561039f57fe5b50506040515195506103f29050565b5085600160a060020a033016318111156103cb5760009550610485565b604051600160a060020a0385169082156108fc029083906000818181858888f19850505050505b84156104815760008054604080517f28090abb000000000000000000000000000000000000000000000000000000008152600160a060020a03308116600483015288811660248301528c81166044830152606482018c9052915191909216926328090abb926084808201939182900301818387803b151561046f57fe5b6102c65a03f1151561047d57fe5b5050505b8495505b5b5050505050929150505600a165627a7a72305820a2a232798773dfcd0ce7dda6123307b254fb29a3beac8cd03a61a9fc1aea73620029
Deployed Bytecode
0x606060405236156100cd5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166319449cb281146100cf57806328090abb146100ed5780633c18d3181461011a5780635e949fa0146101525780635ed7ca5b146101705780636fcb15001461018257806377bb09eb146101ae5780638da5cb5b146101d257806397dc97cb146101fe578063a6f9dae11461022a578063a9b1d50714610248578063b269681d14610274578063b9b8af0b146102a0578063be9a6555146102c4575bfe5b34156100d757fe5b6100eb600160a060020a03600435166102d6565b005b34156100f557fe5b6100eb600160a060020a036004358116906024358116906044351660643561031f565b005b341561012257fe5b610136600160a060020a036004351661037b565b60408051600160a060020a039092168252519081900360200190f35b341561015a57fe5b6100eb600160a060020a03600435166103b7565b005b341561017857fe5b6100eb610400565b005b341561018a57fe5b610136610472565b60408051600160a060020a039092168252519081900360200190f35b34156101b657fe5b6100eb600160a060020a0360043581169060243516610481565b005b34156101da57fe5b6101366104de565b60408051600160a060020a039092168252519081900360200190f35b341561020657fe5b6101366104ed565b60408051600160a060020a039092168252519081900360200190f35b341561023257fe5b6100eb600160a060020a03600435166104fc565b005b341561025057fe5b610136610545565b60408051600160a060020a039092168252519081900360200190f35b341561027c57fe5b6101366105f3565b60408051600160a060020a039092168252519081900360200190f35b34156102a857fe5b6102b0610602565b604080519115158252519081900360200190f35b34156102cc57fe5b6100eb610623565b005b60005433600160a060020a039081169116146102f25760006000fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b81600160a060020a031683600160a060020a031685600160a060020a03167fa64da754fccf55aa65a1f0128a648633fade3884b236e879ee9f64c78df5d5d7846040518082815260200191505060405180910390a45b50505050565b600160a060020a038082166000908152600460205260408120549091168015156103ad5750600354600160a060020a03165b8091505b50919050565b60005433600160a060020a039081169116146103d35760006000fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60015433600160a060020a0390811691161480159061042e575060005433600160a060020a03908116911614155b156104395760006000fd5b6002805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790555b5b565b600354600160a060020a031681565b60005433600160a060020a0390811691161461049d5760006000fd5b600160a060020a038281166000908152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff19169183169190911790555b5b5050565b600054600160a060020a031681565b600154600160a060020a031681565b60005433600160a060020a039081169116146105185760006000fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60015460009033600160a060020a03908116911614801590610576575060005433600160a060020a03908116911614155b156105815760006000fd5b3061058a610661565b600160a060020a03909116815260405190819003602001906000f08015156105ae57fe5b60408051600160a060020a038316815290519192507fef4c8685c12779a52dae7549eb7defa8523f67a054ad425b877a6b2da469a331919081900360200190a15b5b90565b600254600160a060020a031681565b60025474010000000000000000000000000000000000000000900460ff1681565b60005433600160a060020a0390811691161461063f5760006000fd5b6002805474ff0000000000000000000000000000000000000000191690555b5b565b60405161026c806106728339019056006060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029a165627a7a723058205f37abb33ec42325de2a86b496cacd041306060eda1fce344692092e4b8d32870029
Swarm Source
bzzr://a2a232798773dfcd0ce7dda6123307b254fb29a3beac8cd03a61a9fc1aea7362
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.