Added some comments to help.