Refactor to room logic