IMO it would be better to have a `repeats` parameter, and then leave extra logic like that to the person calling it.