completed librarian functions