refactoring rider