public int getFreeGensDialog() {
   String numGensStr =
       JOptionPane.showInputDialog(
           uacalc, "Number of generators?", "Free Algebra", JOptionPane.QUESTION_MESSAGE);
   if (numGensStr == null) return -1;
   int gens = -1;
   boolean gensOk = true;
   try {
     gens = Integer.parseInt(numGensStr);
   } catch (NumberFormatException e) {
     gensOk = false;
   }
   if (!gensOk || gens <= 0) {
     JOptionPane.showMessageDialog(
         this,
         "<html>The number of generators must be positive.<br>" + "Try again.</html>",
         "Number format error",
         JOptionPane.ERROR_MESSAGE);
     return -1;
   }
   return gens;
 }