contract STCDRListing is Ownership {
	string public name = "STCDR Listing";
	bool public enable = true;
	uint256 public count =0 ;
	
	// MAPPING
	mapping (uint256 => Sendvalue) public receivedEther;
		
	  // EVENTS
    event Received(address indexed participant,uint256 amountEther);
	event Withdraw(uint256 amountEther);
	 
	// TYPES
	struct Sendvalue { // tokensPerEth
		address sender;
		uint256 value;
	}		
	 // CONSTRUCTOR
	function STCDRListing() public  {
        fundWallet = msg.sender;
    }
	function removeLiquidity(uint256 amount) external onlyFundWallet {
        require(amount <= this.balance);
        fundWallet.transfer(amount);
		Withdraw(amount);
    }	
	function stop() external onlyFundWallet {
        enable = false;
    }
	function start() external onlyFundWallet {
        enable = true;
    }
	function() payable {
		require(tx.origin == msg.sender);
		require(enable);
		require(msg.value>0);
		count =	safeAdd(count,1);		
		receivedEther[count] = Sendvalue(msg.sender,msg.value);
		Received(msg.sender,msg.value);
	}
	function claimTokens(address _token) external onlyFundWallet {
			require(_token != address(0));
			Token token = Token(_token);
			uint256 balance = token.balanceOf(this);
			token.transfer(fundWallet, balance);
	}	 
  }
function STCDRListing() public  {
       fundWallet = msg.sender;
   }

// CONSTRUCTOR