Some intermediate steps.