b4 refactor