go on refactor