Source: https://maths-people.anu.edu.au/~johnm/courses/r/exercises/pdf/r-exercises.pdf