using System.Collections.Generic;
public static void Main()
Console.WriteLine("Hello World");
public class BTree<T> ( T cargo, BTree<T> left, BTree<T> right) {
public T Cargo {get; set;} = cargo;
public BTree<T> Left {get; set;} = left;
public BTree<T> Right {get; set;} = right;
public class TreeNode<T>(T data)
public T Data { get; set; } = data;
public TreeNode<T> Parent { get; set; }
public ICollection<TreeNode<T>> Children { get; set; } = new LinkedList<TreeNode<T>>();
public TreeNode<T> AddChild(T child)
TreeNode<T> childNode = new TreeNode<T>(child) { Parent = this };
this.Children.Add(childNode);