Step 6; partially implemented.