#11 Refactor