final public Object literal(boolean requireEOF) throws ParseException, java.io.IOException {
  Object val = null;
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    case STRING:
      val = string(false);
      break;
    case INTEGER:
    case FLOAT:
      val = number(false);
      break;
    default:
      jj_la1[24] = jj_gen;
      jj_consume_token(-1);
      throw new ParseException();
    }
    eof(requireEOF);
    {if (true) return val;}
    throw new Error("Missing return statement in function");
  }