edits for readability, 80 chars per line