private Response takeAnswer() throws IOException{ //Implementation to take answer input. Used for storing user responses and storing answer keys.
		String s = null;
		@SuppressWarnings("unchecked")
		ArrayList<String> copy = (ArrayList<String>) right.clone(); //Replacement of responses so responses are not lost
		HashMap<String, ArrayList<String>> dictAns = new HashMap<String, ArrayList<String>>(); //HashMap to pass to Response
		for (int i=1; i <= left.size(); i++){ //Assign ranks for every value
			ArrayList<String> arr = new ArrayList<String>(); //Stores the rankings
			
			Out.getDisp().renderLine("Enter the value at rank " + i + ":"); 
			
			boolean hasFailed = true; //Boolean to keep looping until valid input confirmed
			while (hasFailed){ //Input loop
				s = Input.inputString();
				for (int j = 0; j < copy.size(); j++){ //Compare to every valid response
					if (s.equals(copy.get(j))){ //Good input
						hasFailed = false; //Stop looping
						copy.remove(j); //Remove the response as an option to avoid duplicates
					}
				}
				if (hasFailed)
					Out.getDisp().renderLine("Given Answer Not In Given Options. Please enter again.");
			} //while (hasFailed)
			
			arr.add(s); //Pop on the single rank
			dictAns.put(getLeft().get(i-1), arr); //Add to the Dict
		} //for (int i=1; i <= val; i++)
		
		return new RespDict(dictAns);
	}