Completed #2 fully