using System.Collections.Generic;
using System.Diagnostics;
public static void Main()
Console.WriteLine("Hello World");
private IEnumerable<IEnumerable<T>> GetAllEnumerators<T>(IEnumerable<T> parent)
var result = new List<IEnumerable<T>>();
var stack = new Stack<IEnumerable<T>>();
var current = stack.Pop();
if (current.GetEnumerator() != null)
foreach (var child in current)
stack.Push(child as IEnumerable<T>);