refactored follower code