public async Task LoadSubjectData(SubjectViewModel subject, int vertexLimit)
		{
			if (_adjBySubjectId.ContainsKey(subject.SubjectId))
			{
				var adjs = _adjBySubjectId[subject.SubjectId];

				foreach(var adj in adjs)
				{
					// Read in all the lines
					var lines = await Windows.Storage.FileIO.ReadLinesAsync(adj.File);

					//subjectGraph.AddGraphLines(lines);

					for (int lineIdx = 0; lineIdx < lines.Count; lineIdx++)
					{
						var line = lines[lineIdx];
						var columns = line.TrimEnd().Split('\t');

						for (int colIdx = 0; colIdx < columns.Length; colIdx++)
						{
							if (lineIdx < vertexLimit && colIdx < vertexLimit)
							{
								var val = Double.Parse(columns[colIdx]);

								if (DoWeCare(lineIdx, colIdx) && (adj.DataType == "fMRI-mo") && (colIdx > lineIdx))
								{
									var str = string.Format("{0}, {1:00}{2:00}, {3}", subject.SubjectId, lineIdx, colIdx, val);

									Debug.WriteLine(str);
								}

								// Only load the upper triangle
								if (colIdx > lineIdx)
									adj.Graph.AddEdge(lineIdx, colIdx, Math.Abs(val));
							}
						}
					}

					subject.AddGraph(adj.DataType, adj.Graph);
				}
			}
		}