public Map<Integer, SingleRunScore> scoreSubjectDec2011(Experiment goldStandard, TobiiData subjectData, Map<Integer, List<Double>> recordMap) {

		Map<Integer, SingleRunScore> scoreMap = new HashMap<Integer, SingleRunScore>();
		for(Integer trialID : subjectData.getTrajectories().keySet()) {

			// Old version: exactly as many Tobii trials as there are Track-It trials
			Trajectory<TobiiFrame> subjectTrajectory = subjectData.getTrajectories().get(trialID);

			if( goldStandard.getTrials().containsKey(trialID)) {

				int targetIdx = goldStandard.getTrials().get(trialID).getTargetIdx();
				Trajectory<TrackItFrame> goldTrajectory = goldStandard.getTrials().get(trialID).getTrajectories().get(targetIdx);

				if(recordMap != null) {
					recordMap.put(trialID, new ArrayList<Double>());
				}

				SingleRunScore record = calcScore(goldTrajectory, 
						subjectTrajectory, 
						recordMap == null ? null : recordMap.get(trialID));

				scoreMap.put(trialID, record);

			} else {
				System.err.println("No matching trial found in gold standard for Trial ID: " + trialID);
			}
		}
		return scoreMap;
	}