final String parseConfig(final StringBuilder line, final String section) {
		int idx = 0;
		if (line.length() == 0) {
			return section;
		}
		while (line.charAt(idx) == ' ') {
			++idx;
			if (idx == line.length()) {
				return section;
			}
		}
		if (line.charAt(idx) == '#') {
			// comment -> ignore
			line.setLength(0);
			return section;
		} else if (line.charAt(idx) == '[') {
			final int end = line.indexOf("]", idx) + 1;
			final String currentSection = line.substring(idx, end)
					.toLowerCase();
			this.configOld.put(currentSection, new HashMap<String, String>());
			idx = end;
			while ((idx < line.length()) && (line.charAt(idx) == ' ')) {
				if (++idx == line.length()) {
					break;
				}
			}
			line.setLength(line.length() - idx);
			return currentSection;
		}
		final int start = idx++;
		while (line.charAt(idx) != '=') {
			++idx;
		}
		final String key = line.substring(start, idx).trim().toLowerCase();
		final String value = line.substring(++idx, line.length()).trim();
		this.configOld.get(section).put(key, value);
		line.setLength(0);
		return section;

	}