steps 1 through 4

Committing just in case)