Why the use of `setattr` instead of just `self.next_visit = next_visit`? Similar below for `last_interaction`.