public static void printMeanConnectedDistance(double maxDist) {
		double total = 0.0;
		double count = 0.0;
//		double maxDist = 10000;
		double totalNumCon = 0.0;
		double countNumCon = 0.0;
		HashMap<Integer,Double> cLocsX = new HashMap<Integer,Double>(10000);
		HashMap<Integer,Double> cLocsY = new HashMap<Integer,Double>(10000);
		HashMap<Integer,Double> tLocsX = new HashMap<Integer,Double>(40000);
		HashMap<Integer,Double> tLocsY = new HashMap<Integer,Double>(40000);
		try {
			Connection con = dbConnect();
			ResultSet getCenterLocsQ = con.createStatement().executeQuery(
					"SELECT locationID,x,y FROM "+locTbl+" ORDER BY aggregatePop DESC LIMIT 10000");
			while (getCenterLocsQ.next()) {
				Integer location = new Integer(getCenterLocsQ.getInt("locationID"));
				Double x = new Double(getCenterLocsQ.getDouble("x"));
				Double y = new Double(getCenterLocsQ.getDouble("y"));
				cLocsX.put(location, x);
				cLocsY.put(location, y);
			}
			getCenterLocsQ.close();
			ResultSet getTargetLocsQ = con.createStatement().executeQuery(
					"SELECT locationID,x,y FROM "+locTbl+" ORDER BY aggregatePop DESC LIMIT 10000,40000");
			while (getTargetLocsQ.next()) {
				Integer location = new Integer(getTargetLocsQ.getInt("locationID"));
				Double x = new Double(getTargetLocsQ.getDouble("x"));
				Double y = new Double(getTargetLocsQ.getDouble("y"));
				tLocsX.put(location, x);
				tLocsY.put(location, y);
			}
			getTargetLocsQ.close();
			Iterator<Integer> cLocsItr = cLocsX.keySet().iterator();
			while (cLocsItr.hasNext()) {
				Integer cloc = cLocsItr.next();
				Iterator<Integer> tLocsItr = EpiSimUtil.getLocThatPointTo(cloc).keySet().iterator();
				while (tLocsItr.hasNext()) {
					Integer tloc = tLocsItr.next();
					if (tLocsX.containsKey(tloc)) {
						double dist = Math.sqrt(
								Math.pow(cLocsX.get(cloc).doubleValue() - tLocsX.get(tloc).doubleValue(), 2.0) + 
								Math.pow(cLocsY.get(cloc).doubleValue() - tLocsY.get(tloc).doubleValue(), 2.0));
						if (dist <= maxDist) {
							totalNumCon++;
							total += dist;
							count++;
						}
					}
				}
				countNumCon++;
				if (count % 1000 == 0)
					System.out.println("Count: "+count+" total: "+total+" mean: "+total/count+"\t\tMean num con: "+totalNumCon/countNumCon);
			}
			System.out.println("Count: "+count+" total: "+total+" mean: "+total/count+"\t\tMean num con: "+totalNumCon/countNumCon);
			con.close();
		} catch (Exception e) {
			System.out.println(e);
		}
	}