import java.io.IOException;

/** Parse according to this grammar:
 expr : term ('+' term)* ;
 term : factor ('*' factor)* ;
 factor : ID | INT | '(' expr ')' ;
 */
public class ExprParser extends Parser {
	public ExprParser(TokenStream input) throws IOException {
		super(input);
	}

	public ParseTree expr() {
		ParseTree t;
		ParseTree root = new RuleNode("expr");
		t = term();
		root.addChild(t);
		...
		return root;
	}

	public ParseTree term() {
	}

	public ParseTree factor() {
	}
}

@@ -273,24 +273,59 @@
 input);%0A%09%7D%0A%0A
+%09/**  expr : term ('+' term)* ; */%0A
 %09public Pars
@@ -459,37 +459,116 @@
 %7D%0A%0A%09
-public ParseTree term() %7B%0A%09%7D%0A
+/** term : factor ('*' factor)* ; */%0A%09public ParseTree term() %7B%0A%09%7D%0A%0A%09/** factor : ID %7C INT %7C '(' expr ')' */
 %0A%09pu

update code