add exception and close bf