movement refactoring