add comments, more descriptive var names