code: def get_msgs_for_lagged_nodes(self) -> List[ViewChangeDone]:
          # Should not return a list, only done for compatibility with interface
          
          # TODO: Consider a case where more than one node joins immediately,
          # then one of the node might not have an accepted
          # ViewChangeDone message
          messages = []
          accepted = self._accepted_view_change_done_message
          if accepted:
              messages.append(ViewChangeDone(self.last_completed_view_no, *accepted))
          elif self.name in self._view_change_done:
              messages.append(ViewChangeDone(self.last_completed_view_no,
                                             *self._view_change_done[self.name]))
          else:
              logger.info('{} has no ViewChangeDone message to send for view {}'.
                          format(self, self.view_no))
          return messages
docs: Returns the last accepted `ViewChangeDone` message.
          If no view change has happened returns ViewChangeDone
          with view no 0 to a newly joined node