implementing BST Shell model