works for pairs; updating with node after exams