public static void MakeNodeBlack <K, V, N>(this RedBlackTreeNodeBase <K, V, N> node)
     where N : RedBlackTreeNodeBase <K, V, N>
 {
     if (node != null)
     {
         node.Color = RedBlackTreeNodeColor.Black;
     }
 }
 public static bool IsBlack <K, V, N>(this RedBlackTreeNodeBase <K, V, N> node)
     where N : RedBlackTreeNodeBase <K, V, N>
 => node == null || node.Color == RedBlackTreeNodeColor.Black;
 public static bool IsRed <K, V, N>(this RedBlackTreeNodeBase <K, V, N> node)
     where N : RedBlackTreeNodeBase <K, V, N>
 => node != null && node.Color == RedBlackTreeNodeColor.Red;