reordering, refactoring