version 2.5, now with repeat and sets