final public List<Unit> Variables(FieldDetails fieldDetails) throws ParseException {
  List<Unit> variables = new ArrayList<Unit>();
  Unit variable = null;
    variable = Variable(fieldDetails);
                                  variables.add(variable);
    label_4:
    while (true) {
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
      case COMMA:
        ;
        break;
      default:
        jj_la1[9] = jj_gen;
        break label_4;
      }
      jj_consume_token(COMMA);
      variable = Variable(fieldDetails);
                                           variables.add(variable);
    }
                                                                       {if (true) return variables;}
    throw new Error("Missing return statement in function");
  }