contract JKToken is ERC20Burnable, Operator {
    /**
     * @notice Constructs the JKToken token ERC-20 contract.
     */
    constructor() public ERC20('JKToken', 'JKT') {}

    /**
     * @notice Operator mints JKToken token to a recipient
     * @param recipient_ The address of recipient
     * @param amount_ The amount of JKToken token to mint to
     * @return whether the process has been done
     */
    function mint(address recipient_, uint256 amount_)
        public
        onlyOperator
        returns (bool)
    {
        uint256 balanceBefore = balanceOf(recipient_);
        _mint(recipient_, amount_);
        uint256 balanceAfter = balanceOf(recipient_);

        return balanceAfter > balanceBefore;
    }

    function burn(uint256 amount) public override onlyOperator {
        super.burn(amount);
    }

    function burnFrom(address account, uint256 amount)
        public
        override
        onlyOperator
    {
        super.burnFrom(account, amount);
    }
}
function mint(address recipient_, uint256 amount_)
        public
        onlyOperator
        returns (bool)
    {
        uint256 balanceBefore = balanceOf(recipient_);
        _mint(recipient_, amount_);
        uint256 balanceAfter = balanceOf(recipient_);

        return balanceAfter > balanceBefore;
    }
/**
 * @notice Operator mints JKToken token to a recipient
 * @param recipient_ The address of recipient
 * @param amount_ The amount of JKToken token to mint to
 * @return whether the process has been done
 */