public static void printlocOutDegVsWheightedMeanPersonSocScore(){
		HashMap<Integer,Integer> outDegree = new HashMap<Integer,Integer>(numLocations);
		HashMap<Integer,Double> meanSoc = new HashMap<Integer,Double>(numLocations);
		try {
			Connection con = dbConnect();
			Statement getOutDeg = con.createStatement();
			ResultSet getOutDegQ = getOutDeg.executeQuery(
					"SELECT locationID,outbound FROM "+llCountTbl+" ORDER BY outbound DESC");
			while (getOutDegQ.next()){
				outDegree.put(new Integer(getOutDegQ.getInt("locationID")), new Integer(getOutDegQ.getInt("outbound")));
			}
			getOutDegQ.close();
			PreparedStatement getPeopleAtLoc = con.prepareStatement(
					"SELECT personID FROM "+locPeopleSocRankTbl+" WHERE locationID = ? ORDER BY rank ASC");
			PreparedStatement getPersonSoc = con.prepareStatement(
					"SELECT tally FROM "+EpiSimUtil.conCountTbl+" WHERE personID = ?");
			Iterator<Integer> locs = outDegree.keySet().iterator();
			while(locs.hasNext()){
				double mean = 0.0;
				Integer location = locs.next();
				getPeopleAtLoc.setInt(1, location.intValue());
				ResultSet getPeopleAtLocQ = getPeopleAtLoc.executeQuery();
				while(getPeopleAtLocQ.next()){
					int person = getPeopleAtLocQ.getInt("personID");
					getPersonSoc.setInt(1, person);
					ResultSet getPersonSocQ = getPersonSoc.executeQuery();
					if (getPersonSocQ.first()) mean += (double)getPersonSocQ.getInt("tally");
				}
				getPeopleAtLocQ.last();
				if (getPeopleAtLocQ.getRow() > 0) mean /= (double)getPeopleAtLocQ.getRow();
				meanSoc.put(location, mean);
			}
			con.close();
			Iterator<Integer> locItr = outDegree.keySet().iterator();
			while(locItr.hasNext()){
				Integer location = locItr.next();
				System.out.println(outDegree.get(location)+"\t"+meanSoc.get(location));
			}
		} catch (Exception e){
			System.out.println(e);
		}
	}