refactor, update examples