nice refactor!