consumer refactoring