private InstitutionalWeightings parseInstitutionalWeightings(
			BufferedReader reader, String line) throws IOException {
		int twoInARow = 0;
		int twoInADay = 0;
		int periodSpread = 0;
		int nonMixedDurations = 0;
		int frontLoad_1 = 0;
		int frontLoad_2 = 0;
		int frontLoad_3 = 0;
		while ((line = noReadIfAlreadyReadIWEntry(reader, line)) != null) {
			int comaIndex = line.indexOf(',');
			line = line.replaceAll(" ", "");
			if (line.contains(IW_TWOINAROW)) {
				twoInARow =
						Integer.parseInt(line.substring(comaIndex + 1));
			} else if (line.contains(IW_TWOINADAY)) {
				twoInADay =
						Integer.parseInt(line.substring(comaIndex + 1));
			} else if (line.contains(IW_PERIODSPREAD)) {
				periodSpread =
						Integer.parseInt(line.substring(comaIndex + 1));
			} else if (line.contains(IW_NONMIXEDDURATIONS)) {
				nonMixedDurations =
						Integer.parseInt(line.substring(comaIndex + 1));
			} else if (line.contains(IW_FRONTLOAD)) {
				line = line.substring(comaIndex + 1);
				comaIndex = line.indexOf(',');
				frontLoad_1 = Integer.parseInt(line.substring(0, comaIndex));
				line = line.substring(comaIndex + 1);
				comaIndex = line.indexOf(',');
				frontLoad_2 = Integer.parseInt(line.substring(0, comaIndex));
				line = line.substring(comaIndex + 1);
				frontLoad_3 = Integer.parseInt(line);
			} else {
				//do-nothing
			}
		}
		return new InstitutionalWeightings(twoInARow,
				twoInADay,
				periodSpread,
				nonMixedDurations,
				frontLoad_1,
				frontLoad_2,
				frontLoad_3);
	}