parent
27b156dbc0
commit
bb3ebe13fa
@ -1,38 +0,0 @@ |
|||||||
pragma solidity ^0.4.0; |
|
||||||
import './PullPayment.sol'; |
|
||||||
import './token/SimpleToken.sol'; |
|
||||||
|
|
||||||
/* |
|
||||||
* Bounty |
|
||||||
* This bounty will pay out if you can cause a SimpleToken's balance |
|
||||||
* to be lower than its totalSupply, which would mean that it doesn't |
|
||||||
* have sufficient ether for everyone to withdraw. |
|
||||||
*/ |
|
||||||
contract Bounty is PullPayment { |
|
||||||
|
|
||||||
bool public claimed; |
|
||||||
mapping(address => address) public researchers; |
|
||||||
|
|
||||||
function() { |
|
||||||
if (claimed) throw; |
|
||||||
} |
|
||||||
|
|
||||||
function createTarget() returns(SimpleToken) { |
|
||||||
SimpleToken target = new SimpleToken(); |
|
||||||
researchers[target] = msg.sender; |
|
||||||
return target; |
|
||||||
} |
|
||||||
|
|
||||||
function claim(SimpleToken target) { |
|
||||||
address researcher = researchers[target]; |
|
||||||
if (researcher == 0) throw; |
|
||||||
// Check SimpleToken contract invariants |
|
||||||
// Customize this to the specifics of your contract |
|
||||||
if (target.totalSupply() == target.balance) { |
|
||||||
throw; |
|
||||||
} |
|
||||||
asyncSend(researcher, this.balance); |
|
||||||
claimed = true; |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
Loading…
Reference in new issue