private static IEnumerable<NodeBase> nodes(NodeBase nod) { yield return nod; foreach (var n2 in nod.Children().SelectMany(nodes)) yield return n2; }