added JavaDoc generation