Break this up into two methods for each step.