//Write your own contracts here. Currently compiles using solc v0.4.15+commit.bbb8e64f. pragma solidity ^0.4.18; contract Company { address supporter; address owner; uint goal; uint deadline; mapping (address => uint256) public pledge; constructor ( uint256 numDays, uint256 _goal) public { owner = msg.sender; deadline = now + (numDays * 1 hours); goal= _goal; } function Pledge (uint256 amount) public payable { require(now < deadline); require(msg.value == amount); pledge[msg.sender] += amount; } function claimFunds() public { require(address(this).balance >= goal); require(now >= deadline); require(msg.sender == owner); msg.sender.transfer(address(this).balance); } function Fail() public { require(address(this).balance < goal); require(now >= deadline); uint256 amount = pledge[msg.sender]; pledge[msg.sender] = 0; msg.sender.transfer(amount); } }
0.4.22