Through step 10
Implements step 8