extended javadocs