Changed to allow argument variables, and added comments.