friends-forever refactor