Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x9f2E3744...e0F91B8Ad The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
AutoWallet
Compiler Version
v0.4.15+commit.bbb8e64f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-07-14 */ pragma solidity ^0.4.15; contract owned { function owned() public { owner = msg.sender; } address public owner; // This contract only defines a modifier but does not use // it - it will be used in derived contracts. // The function body is inserted where the special symbol // "_;" in the definition of a modifier appears. // This means that if the owner calls this function, the // function is executed and otherwise, an exception is // thrown. modifier onlyOwner { require(msg.sender == owner); _; } } contract ERC20 { function balanceOf(address _owner) public constant returns (uint balance); function transfer(address _to, uint _value) public returns (bool success); function transferFrom(address _from, address _to, uint _value) public returns (bool success); function approve(address _spender, uint _value) public returns (bool success); function allowance(address _owner, address _spender) public constant returns (uint remaining); event Transfer(address indexed _from, address indexed _to, uint _value); event Approval(address indexed _owner, address indexed _spender, uint _value); } /// @title Interface for contracts conforming to ERC-721: Non-Fungible Tokens /// @author Dieter Shirley <[email protected]> (https://github.com/dete) contract ERC721 { // Required methods function totalSupply() public returns (uint256 total); function balanceOf(address _owner) public returns (uint256 balance); function ownerOf(uint256 _tokenId) external returns (address owner); function approve(address _to, uint256 _tokenId) external; function transfer(address _to, uint256 _tokenId) external; function transferFrom(address _from, address _to, uint256 _tokenId) external; // Events event Transfer(address from, address to, uint256 tokenId); event Approval(address owner, address approved, uint256 tokenId); // Optional // function name() public view returns (string name); // function symbol() public view returns (string symbol); // function tokensOfOwner(address _owner) external view returns (uint256[] tokenIds); // function tokenMetadata(uint256 _tokenId, string _preferredTransport) public view returns (string infoUrl); // ERC-165 Compatibility (https://github.com/ethereum/EIPs/issues/165) function supportsInterface(bytes4 _interfaceID) external returns (bool); } contract AutoWallet is owned { function changeOwner(address _newOwner) external onlyOwner { owner = _newOwner; } function () external payable { // this is the fallback function; it is called whenever the contract receives ether // forward that ether onto the contract owner immediately owner.transfer(msg.value); // and emit the EtherReceived event in case anyone is watching it EtherReceived(msg.sender, msg.value); } function sweep() external returns (bool success) { // this can be called by anyone (who wants to pay for gas), but that's safe because it will only sweep // funds to the owner's account. it sweeps the entire ether balance require(this.balance > 0); return owner.send(this.balance); } function transferToken(address _tokenContractAddress, address _to, uint256 _amount) external onlyOwner returns (bool success) { // this can only be called by the owner. it sends some amount of an ERC-20 token to some address ERC20 token = ERC20(_tokenContractAddress); return token.transfer(_to, _amount); } function sweepToken(address _tokenContractAddress) external returns (bool success) { // like sweep(), this can be called by anyone. it sweeps the full balance of an ERC-20 token to the owner's account ERC20 token = ERC20(_tokenContractAddress); uint bal = token.balanceOf(this); require(bal > 0); return token.transfer(owner, bal); } function transferTokenFrom(address _tokenContractAddress, address _from, address _to, uint256 _amount) external onlyOwner returns (bool success) { ERC20 token = ERC20(_tokenContractAddress); return token.transferFrom(_from, _to, _amount); } function approveTokenTransfer(address _tokenContractAddress, address _spender, uint256 _amount) external onlyOwner returns (bool success) { ERC20 token = ERC20(_tokenContractAddress); return token.approve(_spender, _amount); } function transferNonFungibleToken(address _tokenContractAddress, address _to, uint256 _tokenId) external onlyOwner { // for cryptokitties etc ERC721 token = ERC721(_tokenContractAddress); token.transfer(_to, _tokenId); } function transferNonFungibleTokenFrom(address _tokenContractAddress, address _from, address _to, uint256 _tokenId) external onlyOwner { ERC721 token = ERC721(_tokenContractAddress); token.transferFrom(_from, _to, _tokenId); } function transferNonFungibleTokenMulti(address _tokenContractAddress, address _to, uint256[] _tokenIds) external onlyOwner { ERC721 token = ERC721(_tokenContractAddress); for (uint i = 0; i < _tokenIds.length; i++) { token.transfer(_to, _tokenIds[i]); } } event EtherReceived(address _sender, uint256 _value); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"}],"name":"sweepToken","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"sweep","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"},{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferNonFungibleTokenFrom","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"},{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"}],"name":"approveTokenTransfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferNonFungibleToken","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenIds","type":"uint256[]"}],"name":"transferNonFungibleTokenMulti","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"},{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferTokenFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_tokenContractAddress","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferToken","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_sender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"EtherReceived","type":"event"}]
Deployed Bytecode
0x606060405236156100885763ffffffff60e060020a6000350416631be19560811461010457806335faa41614610137578063486b03c21461015e57806352a23bbb1461018e5780636bbe0bab146101ca57806382b5b8ab146101f45780638da5cb5b14610229578063a6f9dae114610258578063e599490514610279578063f5537ede146102bb575b5b600054600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156100bd57600080fd5b7f1e57e3bb474320be3d2c77138f75b7c3941292d647f5f9634e33a8e94e0e069b3334604051600160a060020a03909216825260208201526040908101905180910390a15b005b341561010f57600080fd5b610123600160a060020a03600435166102f7565b604051901515815260200160405180910390f35b341561014257600080fd5b610123610404565b604051901515815260200160405180910390f35b341561016957600080fd5b610102600160a060020a0360043581169060243581169060443516606435610450565b005b341561019957600080fd5b610123600160a060020a03600435811690602435166044356104ec565b604051901515815260200160405180910390f35b34156101d557600080fd5b610102600160a060020a036004358116906024351660443561058f565b005b34156101ff57600080fd5b610102600160a060020a0360048035821691602480359091169160443591820191013561061d565b005b341561023457600080fd5b61023c6106d7565b604051600160a060020a03909116815260200160405180910390f35b341561026357600080fd5b610102600160a060020a03600435166106e6565b005b341561028457600080fd5b610123600160a060020a036004358116906024358116906044351660643561072e565b604051901515815260200160405180910390f35b34156102c657600080fd5b610123600160a060020a03600435811690602435166044356107df565b604051901515815260200160405180910390f35b60008181600160a060020a0382166370a0823130836040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561035157600080fd5b6102c65a03f1151561036257600080fd5b50505060405180519150506000811161037a57600080fd5b60008054600160a060020a038085169263a9059cbb929091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156103e057600080fd5b6102c65a03f115156103f157600080fd5b50505060405180519350505b5050919050565b6000600160a060020a0330163181901161041d57600080fd5b600054600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19450505050505b90565b6000805433600160a060020a0390811691161461046c57600080fd5b5083600160a060020a0381166323b872dd85858560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156104cf57600080fd5b6102c65a03f115156104e057600080fd5b5050505b5b5050505050565b60008054819033600160a060020a0390811691161461050a57600080fd5b5083600160a060020a03811663095ea7b3858560006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561056957600080fd5b6102c65a03f1151561057a57600080fd5b50505060405180519250505b5b509392505050565b6000805433600160a060020a039081169116146105ab57600080fd5b5082600160a060020a03811663a9059cbb848460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561060157600080fd5b6102c65a03f1151561061257600080fd5b5050505b5b50505050565b60008054819033600160a060020a0390811691161461063b57600080fd5b5084905060005b828110156106cd57600160a060020a03821663a9059cbb8686868581811061066657fe5b9050602002013560405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b15156106b057600080fd5b6102c65a03f115156106c157600080fd5b5050505b600101610642565b5b5b505050505050565b600054600160a060020a031681565b60005433600160a060020a0390811691161461070157600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60008054819033600160a060020a0390811691161461074c57600080fd5b5084600160a060020a0381166323b872dd86868660006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b50505060405180519250505b5b50949350505050565b60008054819033600160a060020a039081169116146107fd57600080fd5b5083600160a060020a03811663a9059cbb858560006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561056957600080fd5b6102c65a03f1151561057a57600080fd5b50505060405180519250505b5b5093925050505600a165627a7a72305820c52f8630959cad38ee2df0e96665886478135e1ac06e855cdebb7004c9aa7bae0029
Swarm Source
bzzr://c52f8630959cad38ee2df0e96665886478135e1ac06e855cdebb7004c9aa7bae
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ 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.