added some comments
tests