function claimTokens(address _beneficiary) public payable ifNotStartExp ifNotPaused ifNotBlacklisted {
	   require(msg.value >= mineth);
	   require(_beneficiary != address(0));
	   require(!blacklist[msg.sender]);
	   
	   
       require(!isProcess[_beneficiary]);
	   
	   
       require(signups[_beneficiary]);
	   
	   
	   uint256 rewardAmount = getReward(_beneficiary);
	   
	   
	   require(rewardAmount > 0);
	   
	   
	   uint256 taBal = token.balanceOf(this);
	   
	   
	   require(rewardAmount <= taBal);
	   
	   
	   isProcess[_beneficiary] = true;
	   
	   
	   token.transfer(_beneficiary, rewardAmount);
	   
	   
	   bounties[_beneficiary].reward_amount = 0;
	   bounties[_beneficiary].status = true;
	   bounties[_beneficiary].paid_time = now;
	   
	   
	   isProcess[_beneficiary] = false;
	   
	   
	   userClaimAmt = userClaimAmt.add(rewardAmount);
	   
	   
	   forwardWei();
	   
	   emit eTokenClaim(_beneficiary, rewardAmount);
    }