protected void setParseTableLine(int state, Hashtable line, RuleStateItem item, Integer action, String terminal)	{
		// set one action into a parse-table row and resolve conflicts
		
		if (setTableLine("PARSE-ACTION", state, line, item, action, terminal) == false)	{
			// shift/reduce or reduce/reduce conflict
			Object o = line.get(terminal);
			
			if (action.equals(ParserTables.SHIFT) || o.equals(ParserTables.SHIFT))	{
				// prefer SHIFT operation
				line.put(terminal, ParserTables.SHIFT);
				System.err.println("WARNING: shift/reduce conflict, SHIFT is preferred.");
			}
			else	{
				System.err.println("WARNING: reduce/reduce conflict, rule with smaller index is preferred.");
				// prefer rule with smaller index
				if (((Integer)o).intValue() > action.intValue())
					line.put(terminal, action);
			}
		}
	}