private BfsTopologicalNode GetTopoNode(IBfsNamedField namedField)
{
if (topoDictionary.ContainsKey(namedField))
return topoDictionary[namedField];
BfsTopologicalNode newNode = new BfsTopologicalNode(namedField);
topoDictionary.Add(namedField, newNode);
return newNode;
}