extended javadoc