added more commenting