this should happen in ``beforeExercise``, not in the constructor IMO