exercise - explanation moved to below answers