refactor follow