added BST work