implement isBST check