changed some comments + explanations