added bf.erl