advanced part of the exercise