contract Cash is ERC20Burnable, Operator {
    /**
     * @notice Constructs the Jet Dollar ERC-20 contract.
     */
    constructor() public ERC20('Jet Dollar', 'JET') {
        _mint(msg.sender, 1 * 10**18);
    }

    /**
     * @notice Operator mints jet dollar to a recipient
     * @param recipient_ The address of recipient
     * @param amount_ The amount of jet dollar 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 jet dollar to a recipient
 * @param recipient_ The address of recipient
 * @param amount_ The amount of jet dollar to mint to
 * @return whether the process has been done
 */