added all javadoc