class BinarySearchTree
{
static class TreeNode
{
String key;
Object info;
TreeNode left, right;
TreeNode(String k, Object in, TreeNode l, TreeNode r)
{
key = k; info = in; left = l; right = r;
}
static TreeNode find(String k, TreeNode t);
static TreeNode insert(String k, Object in, TreeNode t);
static TreeNode remove(String k, TreeNode t);
static String toString(TreeNode t);
}
TreeNode root;
BinarySearchTree();
void insert(String key, Object info);
Object lookup(String key);
void remove(String key);
String toString();
}