Changed choices to storing fragment positions rather than fragments themselves to prevent looping