pragma solidity ^0.4.17;
contract owned {
address public owner;
function owned() {
owner=msg.sender;
}
modifier onlyowner{
if (msg.sender!=owner)
throw;
_;
}
}
contract MyNewBank is owned {
address public owner;
mapping (address=>uint) public deposits;
function init() {
owner=msg.sender;
}
function() payable {
deposit();
}
function deposit() payable {
if (msg.value >= 100 finney)
deposits[msg.sender]+=msg.value;
else
throw;
}
function withdraw(uint amount) public onlyowner {
require(amount>0);
uint depo = deposits[msg.sender];
if (amount <= depo)
msg.sender.send(amount);
else
revert();
}
function kill() onlyowner {
if(this.balance==0) {
selfdestruct(msg.sender);
}
}
}
{
"compilationTarget": {
"MyNewBank.sol": "MyNewBank"
},
"libraries": {},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": []
}
[{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"deposits","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"}]