Do proper JavaDocs