public String createPrintValue(boolean finished) {
		if (finished) {
			prepare();
		}
		StringBuffer valueBuffer = new StringBuffer();
		
		valueBuffer.append(c_valuator.getCode() + (finished?"":"p") + ") " + c_valuator.getDescription() + ", ");
		
		valueBuffer.append(subsetsize + " word" + (subsetsize==1?"":"s") + ": ");
		boolean isFirstSet = true;
		for (Set set : bestsets) {
			if (isFirstSet) {
				isFirstSet = false;
			} else {
				valueBuffer.append(" || ");
			}
			boolean isFirstWord = true;
			for (String word : set.wordList) {
				if (isFirstWord) {
					isFirstWord = false;
				} else {
					valueBuffer.append(",");
				}
				valueBuffer.append(word);
			}
		}
		valueBuffer.append(" (" + bestscore + ")");
		if (finished) {
			postpare();
		}
		return valueBuffer.toString();
	}