Finished, requires some formatting and commentary.