* @return
	 */
	private TreeMap<String,ArrayList<String>> generateUnionSpecs(String[][] wCL, Set<String> dataKeys){
		//System.out.println(dataKeys);
		Map<String,?> rc=data.get("roomsandcourses");
		Map<String,?> rd=data.get("roomsanddepartments");
		Map<String,?> rp=data.get("roomsandprofessors");
		TreeMap<String,ArrayList<String>> unionSpecs = new TreeMap<String,ArrayList<String>>();
		System.out.println("[GUS]"+"keys are "+rc.keySet());
		for (String[] course:wCL){
			String specs="";
			String courseName=course[0];
			System.out.println("[GUS]start course "+courseName.substring(0,7));
			String cSpec=checkLength(courseName.substring(0,8),rc,1);
			System.out.println("[GUS]end course");
			specs=specs.concat(cSpec+";");
			String profName=course[3];
			String[] profs = profName.split("  ");
			String pSpec="";
			for (String p:profs){
				pSpec=checkLength(p,rp,1);
				if (pSpec.equals("1")){
					break;
				}
			}
			specs=specs.concat(pSpec+";");
			String dSpec="";
			specs=specs.concat(dSpec+";");
			if (cSpec.equals("1")){
				System.out.println("[GUS]"+courseName+";"+profName+";"+cSpec);
			}
			ArrayList<String> allSpecs = new ArrayList<String>();
			allSpecs.add(profName+";"+specs);
			unionSpecs.put(courseName, allSpecs);
			//System.out.println(rc.get(courseName));
		}

		return unionSpecs;
	}