import java.io.*;
import java.util.*;
-// FEATURE: try harder to "fuse" states together along two dimensions:
-// - identical (equivalent) states, or states that subsume each other
-// - unnecessary intermediate states ("short cut" GLR)
-
/** a parser which translates an Input<Token> into a Forest<NodeType> */
public abstract class Parser<Token, NodeType> {