public static EQdata loadCSV(File f) {
		ArrayList<EQcamper> sc = new ArrayList<>();
		ArrayList<String> requirements = new ArrayList<>();
		try {
			Scanner m = new Scanner(f);
			String titleLine = m.nextLine();
			titleLine = titleLine.substring(titleLine.indexOf(",")+1); //gets rid of the Scout Name collum
			titleLine = titleLine.substring(titleLine.indexOf(",")+1); //gets rid of the Scout Patrol collum 
			titleLine = titleLine.substring(titleLine.indexOf(",")+1); //gets rid of the Scout Troop collum
			while(titleLine.contains(",")){
				requirements.add(titleLine.substring(0, titleLine.indexOf(",")));
				titleLine = titleLine.substring(titleLine.indexOf(",")+1);
			}
			requirements.add(titleLine);
			
			while(m.hasNextLine()){
				String scoutInfo = m.nextLine();
				String name =  scoutInfo.substring(0, scoutInfo.indexOf(","));
				scoutInfo = scoutInfo.substring(scoutInfo.indexOf(",")+1);
				String patrol = scoutInfo.substring(0, scoutInfo.indexOf(","));
				scoutInfo = scoutInfo.substring(scoutInfo.indexOf(",")+1);
				int troop = 0;
				troop = Integer.parseInt(scoutInfo.substring(0,scoutInfo.indexOf(",")));
				sc.add(new EQcamper(name,patrol,troop, requirements.size()));
				scoutInfo = scoutInfo.substring(scoutInfo.indexOf(",")+1);
				if(scoutInfo.contains(",")){
					for(int i = 0; i<requirements.size(); i++){
						boolean b = false;
						String bit = scoutInfo.substring(0,scoutInfo.indexOf(",")+1);
						if(bit.contains(",")){
							bit = bit.substring(0,scoutInfo.indexOf(","));
							if(bit.length()>0){
								b = true;
							}
						}
						sc.get(sc.size()-1).Recs[i] = b;
						try{
							scoutInfo = scoutInfo.substring(scoutInfo.indexOf(",")+1);
						}catch(Exception e){
							e.printStackTrace();
						}
					}
				}else{
					troop = Integer.parseInt(scoutInfo.substring(1));
					sc.add(new EQcamper(name,patrol,troop, MAX_NUMBER_OF_RECS));
					for(int i = 0; i<MAX_NUMBER_OF_RECS; i++){
						sc.get(sc.size()-1).Recs[i] = false;
					}
				}
			}
			m.close();
		} catch (Exception e) {e.printStackTrace();}
		EQdata ret = new EQdata();
		ret.addScouts(sc);
		ret.recNames = requirements;
		return ret;
	}