Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 192 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Sweep All | 18002540 | 547 days ago | IN | 0 ETH | 0.00057908 | ||||
Transfer | 10736361 | 1643 days ago | IN | 0.05022548 ETH | 0.00002104 | ||||
Transfer | 10716492 | 1646 days ago | IN | 0.0500627 ETH | 0.00002104 | ||||
Transfer | 10701368 | 1648 days ago | IN | 0.0210964 ETH | 0.00002104 | ||||
Transfer | 10690362 | 1650 days ago | IN | 0.05020542 ETH | 0.00002104 | ||||
Transfer | 10430001 | 1690 days ago | IN | 0.05033106 ETH | 0.00002104 | ||||
Transfer | 10401211 | 1694 days ago | IN | 0.05034332 ETH | 0.00002104 | ||||
Transfer | 10375908 | 1698 days ago | IN | 0.05014647 ETH | 0.00002104 | ||||
Sweep All | 10358369 | 1701 days ago | IN | 0 ETH | 0.0011449 | ||||
Transfer | 10349931 | 1702 days ago | IN | 0.05022886 ETH | 0.00002104 | ||||
Transfer | 10324797 | 1706 days ago | IN | 0.05009146 ETH | 0.00002104 | ||||
Transfer | 10300630 | 1710 days ago | IN | 0.05033811 ETH | 0.00002104 | ||||
Transfer | 10268919 | 1715 days ago | IN | 0.05035802 ETH | 0.00002104 | ||||
Transfer | 10246726 | 1718 days ago | IN | 0.05039187 ETH | 0.00002104 | ||||
Transfer | 10220149 | 1722 days ago | IN | 0.05076142 ETH | 0.00002104 | ||||
Transfer | 10195475 | 1726 days ago | IN | 0.05023709 ETH | 0.00002104 | ||||
Transfer | 10166737 | 1731 days ago | IN | 0.05010248 ETH | 0.00002104 | ||||
Transfer | 10142634 | 1734 days ago | IN | 0.05014524 ETH | 0.00002104 | ||||
Transfer | 10119570 | 1738 days ago | IN | 0.05007498 ETH | 0.00002104 | ||||
Transfer | 10095502 | 1742 days ago | IN | 0.05050744 ETH | 0.00002104 | ||||
Transfer | 10072626 | 1745 days ago | IN | 0.05041249 ETH | 0.00002104 | ||||
Transfer | 10047355 | 1749 days ago | IN | 0.05011839 ETH | 0.00002104 | ||||
Transfer | 10018669 | 1754 days ago | IN | 0.05043501 ETH | 0.00002104 | ||||
Transfer | 9995752 | 1757 days ago | IN | 0.05087478 ETH | 0.00002104 | ||||
Transfer | 9970314 | 1761 days ago | IN | 0.05009606 ETH | 0.00002104 |
Latest 12 internal transactions
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
18002540 | 547 days ago | 0.32241088 ETH | ||||
10358369 | 1701 days ago | 1.20674754 ETH | ||||
9794934 | 1788 days ago | 1.00960713 ETH | ||||
9469791 | 1838 days ago | 0.90751524 ETH | ||||
9229771 | 1875 days ago | 1.00845062 ETH | ||||
8966630 | 1923 days ago | 0.96117505 ETH | ||||
8685354 | 1968 days ago | 1.1633149 ETH | ||||
8345122 | 2021 days ago | 0.96121408 ETH | ||||
8049537 | 2067 days ago | 0.50502644 ETH | ||||
7920538 | 2087 days ago | 0.50908652 ETH | ||||
7789721 | 2108 days ago | 0.55527012 ETH | ||||
6940201 | 2254 days ago | Contract Creation | 0 ETH |
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.
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xF2f313A4...Fd1BF0dA9 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.24+commit.e67f0147
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-02-27 */ pragma solidity ^0.4.24; contract AbstractSweeper { function sweepAll(address token) public returns (bool); function() public { revert(); } Controller controller; constructor(address _controller) public { controller = Controller(_controller); } modifier canSweep() { if(msg.sender != controller.authorizedCaller() && msg.sender != controller.owner()){ revert(); } if(controller.halted()){ revert(); } _; } } contract Token { function balanceOf(address a) public pure returns (uint) { (a); return 0; } function transfer(address a, uint val) public pure returns (bool) { (a); (val); return false; } } contract DefaultSweeper is AbstractSweeper { constructor(address controller) AbstractSweeper(controller) public { } function sweepAll(address _token) public canSweep returns (bool) { bool success = false; address destination = controller.destination(); if(_token != address(0)){ Token token = Token(_token); success = token.transfer(destination, token.balanceOf(this)); }else{ success = destination.send(address(this).balance); } return success; } } contract UserWallet { AbstractSweeperList sweeperList; constructor(address _sweeperlist) public { sweeperList = AbstractSweeperList(_sweeperlist); } function() public payable { } function tokenFallback(address _from, uint _value, bytes _data) public pure { (_from); (_value); (_data); } function sweepAll(address _token) public returns (bool) { return sweeperList.sweeperOf(_token).delegatecall(msg.data); } } contract AbstractSweeperList { function sweeperOf(address _token) public returns (address); } contract Controller is AbstractSweeperList { address public owner; address public authorizedCaller; address public destination; bool public halted; event NewWalletCreated(address receiver); modifier onlyOwner() { if(msg.sender != owner){ revert(); } _; } modifier onlyAuthorizedCaller() { if(msg.sender != authorizedCaller){ revert(); } _; } modifier onlyAdmins() { if(msg.sender != authorizedCaller && msg.sender != owner){ revert(); } _; } constructor() public { owner = msg.sender; destination = msg.sender; authorizedCaller = msg.sender; } function setAuthorizedCaller(address _newCaller) public onlyOwner { authorizedCaller = _newCaller; } function setDestination(address _dest) public onlyOwner { destination = _dest; } function setOwner(address _owner) public onlyOwner { owner = _owner; } function newWallet() public onlyAdmins returns (address wallet) { wallet = address(new UserWallet(this)); emit NewWalletCreated(wallet); } function halt() public onlyAdmins { halted = true; } function start() public onlyOwner { halted = false; } address public defaultSweeper = address(new DefaultSweeper(this)); mapping (address => address) sweepers; function addSweeper(address _token, address _sweeper) public onlyOwner { sweepers[_token] = _sweeper; } function sweeperOf(address _token) public returns (address) { address sweeper = sweepers[_token]; if(sweeper == 0){ sweeper = defaultSweeper; } return sweeper; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"sweepAll","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_sweeperlist","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]
Deployed Bytecode
0x60806040526004361061004b5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c0ee0b8a811461004d578063c18cfe86146100c3575b005b34801561005957600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261004b94823573ffffffffffffffffffffffffffffffffffffffff169460248035953695946064949201919081908401838280828437509497506101059650505050505050565b3480156100cf57600080fd5b506100f173ffffffffffffffffffffffffffffffffffffffff6004351661010a565b604080519115158252519081900360200190f35b505050565b60008054604080517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291519190921691633c18d31891602480830192602092919082900301818787803b15801561017f57600080fd5b505af1158015610193573d6000803e3d6000fd5b505050506040513d60208110156101a957600080fd5b505160405173ffffffffffffffffffffffffffffffffffffffff90911690600090369080838380828437820191505092505050600060405180830381855af49493505050505600a165627a7a72305820ec90d4e55fb69f839fa555767145d6ac7a8f1aa98ed098b09c220c4a34f02ba10029
Deployed Bytecode Sourcemap
1322:501:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;1539:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1539:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1539:139:0;;-1:-1:-1;1539:139:0;;-1:-1:-1;;;;;;;1539:139:0;1686:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1686:134:0;;;;;;;;;;;;;;;;;;;;;;;;;1539:139;;;;:::o;1686:134::-;1736:4;1760:11;;:29;;;;;;:11;:29;;;;;;;;;:11;;;;;:21;;:29;;;;;;;;;;;;;;1736:4;1760:11;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;1760:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1760:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1760:29:0;:52;;:42;;;;;1803:8;;;;1760:52;1803:8;;;;1760:52;;;;;;;;;;;;;;;;;;;;;;1686:134;-1:-1:-1;;;;1686:134:0:o
Swarm Source
bzzr://ec90d4e55fb69f839fa555767145d6ac7a8f1aa98ed098b09c220c4a34f02ba1
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.