refactor fbm