final public Exp.PrimaryExp PrefixExp() throws ParseException {
		Token n;
		Exp e;
		Exp.PrimaryExp p;
		long i = LineInfo();
		switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
		case NAME:
			n = jj_consume_token(NAME);
			p = Exp.nameprefix(n.image);
			L(p, i); {
			if (true)
				return p;
		}
			break;
		case 75:
			jj_consume_token(75);
			e = Exp();
			jj_consume_token(76);
			p = Exp.parensprefix(e);
			L(p, i); {
			if (true)
				return p;
		}
			break;
		default:
			jj_la1[16] = jj_gen;
			jj_consume_token(-1);
			throw new ParseException();
		}
		throw new Error("Missing return statement in function");
	}