option 3 finally finished, produces correct output