parent
caca41f855
commit
99f288bfb5
@ -1,38 +0,0 @@ |
|||||||
pragma solidity ^0.4.0; |
|
||||||
import '../PullPayment.sol'; |
|
||||||
import '../token/CrowdsaleToken.sol'; |
|
||||||
|
|
||||||
/* |
|
||||||
* Bounty |
|
||||||
* This bounty will pay out if you can cause a CrowdsaleToken's balance |
|
||||||
* to be lower than its totalSupply, which would mean that it doesn't |
|
||||||
* have sufficient ether for everyone to withdraw. |
|
||||||
*/ |
|
||||||
contract CrowdsaleTokenBounty is PullPayment { |
|
||||||
|
|
||||||
bool public claimed; |
|
||||||
mapping(address => address) public researchers; |
|
||||||
|
|
||||||
function() { |
|
||||||
if (claimed) throw; |
|
||||||
} |
|
||||||
|
|
||||||
function createTarget() returns(CrowdsaleToken) { |
|
||||||
CrowdsaleToken target = new CrowdsaleToken(); |
|
||||||
researchers[target] = msg.sender; |
|
||||||
return target; |
|
||||||
} |
|
||||||
|
|
||||||
function claim(CrowdsaleToken target) { |
|
||||||
address researcher = researchers[target]; |
|
||||||
if (researcher == 0) throw; |
|
||||||
// Check CrowdsaleToken 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