functions play_an_arc and the functions which depend of it