examples refactor