- added JavaDoc and exceptions