Refactor; all