@SuppressWarnings("rawtypes")
	private String prepareText(String sHtml) {

		sHtml = this.sanitize(sHtml);

		List<String> lWords;
		lWords = new ArrayList<String>(Arrays.asList(sHtml.split(" ")));

		Iterator i;
		i = lWords.iterator();

		/*
		 * Usuń zbyt krótkie i zbyt długie elemenety
		 */
		String element = null;
		while (i.hasNext()) {

			element = i.next().toString();

			if (element.length() < 3 || element.length() > 36
					|| element.trim().length() < 3) {
				i.remove();
			}

		}

		/*
		 * Policz liczbę danych słów
		 */
		HashMap<String, Integer> countMap = new HashMap<String, Integer>();

		i = lWords.iterator();

		while (i.hasNext()) {

			element = i.next().toString();

			if (!countMap.containsKey(element)) {
				countMap.put(element, 1);
			} else {
				Integer count = countMap.get(element);
				count = count + 1;
				countMap.put(element, count);
			}

		}

		/*
		 * Usuń elementy ze zbyt dużą liczbą wystąpień
		 */
		i = lWords.iterator();

		while (i.hasNext()) {

			if (countMap.get(i.next().toString()) > 10) {
				i.remove();
			}

		}

		String sString = Utils.implode(lWords, " ");
		sString = sString.trim().replaceAll("( )+", " ");

		return sString;

	}