refactoring in preparation for more than one competitor