Refactor so that not constantly removing and adding to lists