added options to leave choices & optimised looping