function bonusMinting(address to, uint256 amount) stopInEmergency public {
        require(msg.sender == bonusMintingAgent || isOwner());
        require(amount <= bonusAvailable);
        require(token.totalSupply() + amount <= hardCapInTokens);

        bonusTotalSupply = bonusTotalSupply.add(amount);
        bonusAvailable = bonusAvailable.sub(amount);
        EBonusMinting(to, amount);
        token.mint(to, amount);
    }