new version with javadoc