Provides a class exam, which eases production of exams, even by a LaTeX novice. Simple commands are provided to (i) create questions, parts of questions, subparts of parts, and subsubparts of subparts, all with optional point values, (ii) create a grading table, indexed either by question number (listing each question and the total possible points for that question) or by page number (listing each page with points and the total possible points for that page), and (iii) create headers and footers that are each specified in three parts: one part to be left justified, one part to be centered, and one part to be right justified, in the manner of fancyhdr Headers and/or footers can be different on the first page of the exam, can be different on the last page of the exam, and can vary depending on whether the page number is odd or even, or on whether the current page continues a question from a previous page, or on whether the last question on the current page continues onto the following page. Multiple line headers and/or footers are allowed, and it is easy to increase the part of the page devoted to headers and/or footers to allow for this.