Мне нужна реализация красно-черного дерева на C# со следующими функциями: [list] [*]Поиск, вставка и удаление в O(log n). [*]Тип элементов должен быть универсальным. [*]Поддержка в Comparer(T) для сортировки T по различным полям в нем. [*]Поиск в дереве должен осуществляться по определенному полю, поэтому он не примет T, но примет тип поля, сортирующий его. [*]Поиск не должен осуществляться только по точному значению. Должен поддерживать поиск по нижнему/высшему уровню. [/list] Спасибо.