added some documentation comments