finished bst.h