public void addPrefix(int statenum,Terminal prefix,Terminal token)
	{
		if(!prefixes.containsKey(statenum)) prefixes.put(statenum,new Hashtable< Terminal,HashSet<Terminal> >());
		if(!prefixes.get(statenum).containsKey(prefix)) prefixes.get(statenum).put(prefix,new HashSet<Terminal>());
		prefixes.get(statenum).get(prefix).add(token);
		if(!prefixesPerTerminal.containsKey(statenum)) prefixesPerTerminal.put(statenum,new Hashtable< Terminal,HashSet<Terminal> >());
		if(!prefixesPerTerminal.get(statenum).containsKey(token)) prefixesPerTerminal.get(statenum).put(token,new HashSet<Terminal>());
		prefixesPerTerminal.get(statenum).get(token).add(prefix);
	}