i added some comments.