public Production[] determinalize(Production production) {
		String[] tokens = separateString(production.getRHS());
		List list = new ArrayList();
		String rhs = "";
		for (int i = 0; i < tokens.length; i++) {
			if (grammar.isTerminal(tokens[i])) {
				String newR = getLeft(tokens[i]);
				if (leftAdded)
					list.add(new Production(newR, tokens[i]));
				rhs += newR;
			} else
				rhs += tokens[i];
		}
		list.add(0, new Production(production.getLHS(), rhs));
		return (Production[]) list.toArray(new Production[0]);
	}