refactor code kata