private static String parseFile(String fileName) {

		final StringBuffer fileContents = new StringBuffer();

		// Attempt to read from the jar file
		final URL fileURL = ClassLoader.getSystemClassLoader().getResource(fileName);

		if (fileURL == null) {
			throw new RuntimeException(ERROR_MSG
					+ "could not find " + fileName);
		}

		// Read the characters from the file
		BufferedReader in = null;
		try {
			final URLConnection connection = fileURL.openConnection();
			connection.connect();

			in = new BufferedReader(new InputStreamReader(connection
					.getInputStream()));

			int counter = 0;
			int c;
			while (((c = in.read()) > 0) && (counter < MAX_CHARS)) {
				// Allow the character only if its printable ascii or \n
				if ((CharUtils.isAsciiPrintable((char) c))
						|| (((char) c) == '\n')) {
					fileContents.append((char) c);
				}
				counter++;
			}
			in.close();

			if(counter == MAX_CHARS) {

				throw new RuntimeException(ERROR_MSG
						+ "\n... stopped reading file :" + fileName + "\nafter " + MAX_CHARS + " characters.\n\n");

			}

		} catch (final IOException e1) {
			throw new RuntimeException(ERROR_MSG
					+ "could not read " + fileName);
		} finally {
			IOUtils.closeQuietly(in);
		}

		return fileContents.toString();
	}