using System.Collections.Generic;
public static void Main()
Children = new List<Tree> {
Children = new List<Tree> {
Action<Tree> f = (Tree t) => Console.WriteLine(t.Name);
public static void Dfs(Action<Tree> f, Tree root) {
foreach(var child in root.Children)
public Guid Name {get;set;}
public IEnumerable<Tree> Children {get;set;}
Children = new List<Tree>();