John--added comments to help my understanding