while loop
do-while loop, better test
merging the ghost committer's work