work on bcnf