improvements to bnf