Refactor and move order