added more JavaDocs