Assignment 5 - Opt Out. Tidied up.