better mode elaboration