Corrected Librarian, improved speed (7 min -> 2 min)