Before refactoring away abstraction