class RedBlackTree {

    public V remove(K key) {
    	
        RedBlackNode<K,V> node = findFirstNode(key);
        if (node == null) {
            return null;
        }
        V value = node.value;
        deleteEntry(node);
        return value;
    }

    public  RedBlackTree(Comparator<K> comparator, boolean allowDuplicateKeys);
    public  RedBlackTree(RedBlackTree<K, V> tree);

}